Wireless Multi-Channel Headphone Systems and Methods

ABSTRACT

Some disclosed systems and methods include a surround sound controller and one or more wireless headphones that switch between operating in various modes. In a first mode, the surround sound controller uses a first MCS to transmit first surround sound audio information to a first pair of headphones. In a second mode, the surround sound controller uses a second MCS to transmit (a) the first surround sound audio information to the first pair of headphones and (b) second surround sound audio information to a second pair of headphones. In operation, the first MCS corresponds to a lower data rate at a higher wireless link margin than the second MCS.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/415,783 titled “Wireless Multi-Channel Headphones Systems andMethods,” filed on Apr. 17, 2019, and currently pending. The entirecontents of U.S. application Ser. No. 16/415,783 are incorporated hereinby reference.

FIELD OF THE DISCLOSURE

The present disclosure is related to consumer goods and, moreparticularly, to methods, systems, products, features, services, andother elements directed to media playback and aspects thereof, includingsurround sound media.

BACKGROUND

Options for accessing and listening to digital audio in an out-loudsetting were limited until in 2002, when SONOS, Inc. began developmentof a new type of playback system. Sonos then filed one of its firstpatent applications in 2003, entitled “Method for Synchronizing AudioPlayback between Multiple Networked Devices,” and began offering itsfirst media playback systems for sale in 2005. The Sonos Wireless HomeSound System enables people to experience music from many sources viaone or more networked playback devices. Through a software controlapplication installed on a controller (e.g., smartphone, tablet,computer, voice input device), one can play what she wants in any roomhaving a networked playback device. Media content (e.g., songs,podcasts, video sound) can be streamed to playback devices such thateach room with a playback device can play back corresponding differentmedia content. In addition, rooms can be grouped together forsynchronous playback of the same media content, and/or the same mediacontent can be heard in all rooms synchronously.

BRIEF DESCRIPTION OF THE DRAWINGS

Features, aspects, and advantages of the presently disclosed technologymay be better understood with regard to the following description,appended claims, and accompanying drawings, as listed below. A personskilled in the relevant art will understand that the features shown inthe drawings are for purposes of illustrations, and variations,including different and/or additional features and arrangements thereof,are possible.

FIG. 1A shows a partial cutaway view of an environment having a mediaplayback system configured in accordance with aspects of the disclosedtechnology.

FIG. 1B shows a schematic diagram of the media playback system of FIG.1A and one or more networks.

FIG. 1C shows a block diagram of a playback device.

FIG. 1D shows a block diagram of a playback device.

FIG. 1E shows a block diagram of a network microphone device.

FIG. 1F shows a block diagram of a network microphone device.

FIG. 1G shows a block diagram of a playback device.

FIG. 1H shows a partially schematic diagram of a control device.

FIGS. 1-I through 1L show schematic diagrams of corresponding mediaplayback system zones.

FIG. 1M shows a schematic diagram of media playback system areas.

FIG. 2A shows a front isometric view of a playback device configured inaccordance with aspects of the disclosed technology.

FIG. 2B shows a front isometric view of the playback device of FIG. 3Awithout a grille.

FIG. 2C shows an exploded view of the playback device of FIG. 2A.

FIG. 3A shows a front view of a network microphone device configured inaccordance with aspects of the disclosed technology.

FIG. 3B shows a side isometric view of the network microphone device ofFIG. 3A.

FIG. 3C shows an exploded view of the network microphone device of FIGS.3A and 3B.

FIG. 3D shows an enlarged view of a portion of FIG. 3B.

FIG. 3E shows a block diagram of the network microphone device of FIGS.3A-3D

FIG. 3F shows a schematic diagram of an example voice input.

FIGS. 4A-4D show schematic diagrams of a control device in variousstages of operation in accordance with aspects of the disclosedtechnology.

FIG. 5 shows front view of a control device.

FIG. 6 shows a message flow diagram of a media playback system.

FIG. 7 shows an example configuration of a multichannel audio systemwith wireless headphones according to some embodiments.

FIG. 8 shows an example timing diagram for generating and transmittingsurround sound audio information to multiple sets of wireless headphonesaccording to some embodiments.

FIG. 9 shows an example method for generating and transmitting surroundsound audio information to multiple sets of wireless headphonesaccording to some embodiments.

FIG. 10 shows an example method of receiving and processing surroundsound audio information at a set of wireless headphones according tosome embodiments.

The drawings are for the purpose of illustrating example embodiments,but those of ordinary skill in the art will understand that thetechnology disclosed herein is not limited to the arrangements and/orinstrumentality shown in the drawings.

DETAILED DESCRIPTION I. Overview

Surround sound systems with satellite speakers distributed within alistening area can provide listeners with a highly immersive multimediaexperience when (i) listening to music, (ii) playing video games, and/or(iii) watching television, movies, and/or other video or multimediacontent. Wireless surround sound systems are desirable because thesatellite speakers can be implemented quickly and easily without theneed to run speaker cabling throughout the room to connect the satellitespeakers to a central surround sound processor, such a soundbar, anaudio tuner, audio/video head end, or other central surround soundprocessor. Additionally, wireless surround sound systems can be upgradedto add more satellites more easily than wired systems because existingsatellites can be repurposed/repositioned (e.g., reconfiguring a rearsatellite to function as a side satellite) within a room as newsatellites are added to the system over time.

Some surround sound systems additionally or alternatively includewireless headphones configured to play multi-channel audio content,including surround sound content that is associated with correspondingvideo content. For an immersive and enjoyable surround sound experiencewith wireless headphones, it is desirable for surround sound audioplayed by a wireless headphone set to be based at least in part on theposition of the listener (and thus, the position of the headphone set)relative to a screen configured to display video content correspondingto the surround sound audio. For example, if a first listener is seatedto the right of the screen, it is desirable for that first listener'swireless headphones to play surround sound audio content as though thefirst listener is positioned in the right side of the action on screen,e.g., so that explosions appearing on the left or middle of the screensound as though they are to the left of the first listener, andexplosions on the right side of the screen sound as though they areright in front of or next to the first listener. Similarly, if a secondlistener is seated to the left of the screen, it is desirable for thatsecond listener's wireless headphones to play surround sound audiocontent as though the second listener is positioned in the left side ofthe action on screen, e.g., so that dialog from characters appearing onthe right or middle of the screen sound as though they are to the rightof the second listener, and dialog on the left side of the screen soundsas though it is right in front of or next to the second listener. It maybe desirable in some instances for the multi-channel surround soundsystem to track or monitor the position of the listener (e.g., bytracking or monitoring the position of the listener's wireless headphoneset) relative to the screen so that the surround sound audio generatedby the listener's wireless headphone set remains consistent with thelistener's position as the listener moves about the room (or perhapseven leaves the room, e.g., to go to the kitchen for a snack) where thescreen is located.

To achieve this level of immersion and realism for wireless headphonewearers, the surround sound audio generated and played by the firstlistener's wireless headphones should be different (at least soundspatially different) than the surround sound audio generated and playedby the second listener's wireless headphones. In some embodiments, foreach wireless headphone set to play different surround sound audio, thesurround sound processor, for each wireless headphone set: (i) generatessurround sound audio information for the wireless headphone set and (ii)transmits the generated surround sound audio information to the wirelessheadphone set.

Various technical challenges arise when generating and transmittingsurround sound audio information to multiple wireless headphone sets. Inparticular, the surround sound controller generates and transmitsheadphone-specific surround sound audio information to every wirelessheadphone set, and each wireless headphone set receives, processes, andplays surround sound content sufficiently fast so that viewers/listenersdo not experience a “lip sync” delay. The time and wireless spectrumavailable to distribute content to every headphone set is finite. Thesurround sound controller and the headphone sets can use higher orderwireless Modulation and Coding Schemes (MCS) for distributing surroundsound audio information to all the wireless headphone sets. But whilehigher order MCSs may have greater throughput, they tend to have lowerwireless link margin, which can affect wireless range and transmissionsignal quality.

More particularly, in the context of the disclosed systems, transmittingdata at a higher MCS generally enables a surround sound controller totransmit more channel streams comprising surround sound audioinformation to more headphone sets more quickly (thereby avoiding or atleast ameliorating undesirable “lip sync delay”) because of the higherdata throughput achievable at the higher MCS compared to lower MCSs.However, the higher MCS has lower wireless link margin, and thus, thehigher MCS has lower range (i.e., shorter transmission distance) and isless robust when operating in environments having wireless interference,which can increase retransmissions and/or cause audio playback to dropout because of low wireless signal-to-noise ratio. Transmitting data ata lower MCS enables the surround sound processor to transmit channelstreams comprising surround sound audio information to headphones with ahigher wireless link margin, and thus more reliably, particularly overlonger distances and in environments with greater wireless interference.However, the lower data throughput at the lower MCS compared to thehigher MCSs reduces the number of headphone sets that the surround soundcontroller can support simultaneously, at least in embodiments where thesurround sound controller is configured to generate and transmitseparate channel streams comprising headphone-specific surround soundaudio information to each wireless headphone set. To strike a balancebetween data throughput and wireless link robustness, in someembodiments, the surround sound controller and the headphone sets areconfigured to use different MCSs based on the number of headphone setsin concurrent operation.

In some embodiments, the systems and methods include a surround soundcontroller (or perhaps a surround sound controller component of aplayback device, e.g., a soundbar) generating and transmitting channelstreams comprising surround sound audio information to each set ofheadphones. In some embodiments, the surround sound controller generatesa separate channel stream for each set of headphones based on each setof headphone's position relative to a screen displaying video contentcorresponding to the surround sound audio content that the surroundsound controller transmits to each set of headphones.

In some embodiments, the surround sound controller determines whether itis (or should) operate in one of (i) a first headphone connectivitystate, where the surround sound controller is configured to transmit afirst channel stream comprising first surround sound audio informationto a first pair of headphones, or (ii) a second headphone connectivitystate, where the surround sound controller is configured to concurrentlytransmit (a) the first channel stream comprising the first surroundsound audio information to the first pair of headphones and (b) a secondchannel stream comprising second surround sound audio information to asecond pair of headphones. In response to determining that the surroundsound controller is operating in the first headphone connectivity state,the surround sound controller uses the first MCS to transmit the firstchannel stream comprising the first surround sound audio information tothe first pair of headphones. And in response to determining that thesurround sound controller is operating in the second headphoneconnectivity state, the surround sound controller uses a second MCS totransmit (a) the first channel stream comprising the first surroundsound audio information to the first pair of headphones and (b) thesecond channel stream comprising the second surround sound audioinformation to the second pair of headphones. In operation, the firstMCS corresponds to a lower data rate at a higher wireless link marginthan the second MCS.

In some embodiments, an individual pair of headphones is configured toperform functions in cooperation with the above-described surround soundcontroller functions. For example, in some embodiments, an individualpair of headphones receives a message from a surround sound controllerassociated with the pair of headphones. In some embodiments, the messageindicates that the surround sound controller is configured in one of (i)a first headphone connectivity state or (ii) a second headphoneconnectivity state. In response to the message comprising an indicationthat the surround sound controller is configured in the first headphoneconnectivity state, the headphone set configures itself to receive achannel stream comprising surround sound audio information encoded viathe first MCS from the surround sound controller. And in response to themessage comprising an indication that the surround sound controller isconfigured in the second headphone connectivity state, the headphone setconfigures itself to receive a channel stream comprising surround soundaudio information encoded via a second MCS from the surround soundcontroller.

While some examples described herein may refer to functions performed bygiven actors such as “users,” “listeners,” and/or other entities, itshould be understood that this is for purposes of explanation only. Theclaims should not be interpreted to require action by any such exampleactor unless explicitly required by the language of the claimsthemselves.

In the figures, identical reference numbers identify generally similar,and/or identical, elements. To facilitate the discussion of anyparticular element, the most significant digit or digits of a referencenumber refers to the Figure in which that element is first introduced.For example, element 110 a is first introduced and discussed withreference to FIG. 1A. Many of the details, dimensions, angles and otherfeatures shown in the Figures are merely illustrative of particularembodiments of the disclosed technology. Accordingly, other embodimentscan have other details, dimensions, angles and features withoutdeparting from the spirit or scope of the disclosure. In addition, thoseof ordinary skill in the art will appreciate that further embodiments ofthe various disclosed technologies can be practiced without several ofthe details described below.

II. Suitable Operating Environment

FIG. 1A is a partial cutaway view of a media playback system 100distributed in an environment 101 (e.g., a house). The media playbacksystem 100 comprises one or more playback devices 110 (identifiedindividually as playback devices 110 a-n), one or more networkmicrophone devices (“NMDs”), 120 (identified individually as NMDs 120a-c), and one or more control devices 130 (identified individually ascontrol devices 130 a and 130 b).

As used herein the term “playback device” can generally refer to anetwork device configured to receive, process, and output data of amedia playback system. For example, a playback device can be a networkdevice that receives and processes audio content. In some embodiments, aplayback device includes one or more transducers or speakers powered byone or more amplifiers. In other embodiments, however, a playback deviceincludes one of (or neither of) the speaker and the amplifier. Forinstance, a playback device can comprise one or more amplifiersconfigured to drive one or more speakers external to the playback devicevia a corresponding wire or cable.

Moreover, as used herein the term NMD (i.e., a “network microphonedevice”) can generally refer to a network device that is configured foraudio detection. In some embodiments, an NMD is a stand-alone deviceconfigured primarily for audio detection. In other embodiments, an NMDis incorporated into a playback device (or vice versa).

The term “control device” can generally refer to a network deviceconfigured to perform functions relevant to facilitating user access,control, and/or configuration of the media playback system 100.

Each of the playback devices 110 is configured to receive audio signalsor data from one or more media sources (e.g., one or more remoteservers, one or more local devices) and play back the received audiosignals or data as sound. The one or more NMDs 120 are configured toreceive spoken word commands, and the one or more control devices 130are configured to receive user input. In response to the received spokenword commands and/or user input, the media playback system 100 can playback audio via one or more of the playback devices 110. In certainembodiments, the playback devices 110 are configured to commenceplayback of media content in response to a trigger. For instance, one ormore of the playback devices 110 can be configured to play back amorning playlist upon detection of an associated trigger condition(e.g., presence of a user in a kitchen, detection of a coffee machineoperation). In some embodiments, for example, the media playback system100 is configured to play back audio from a first playback device (e.g.,the playback device 100 a) in synchrony with a second playback device(e.g., the playback device 100 b). Interactions between the playbackdevices 110, NMDs 120, and/or control devices 130 of the media playbacksystem 100 configured in accordance with the various embodiments of thedisclosure are described in greater detail below with respect to FIGS.1B-1L.

In the illustrated embodiment of FIG. 1A, the environment 101 comprisesa household having several rooms, spaces, and/or playback zones,including (clockwise from upper left) a master bathroom 101 a, a masterbedroom 101 b, a second bedroom 101 c, a family room or den 101 d, anoffice 101 e, a living room 101 f, a dining room 101 g, a kitchen 101 h,and an outdoor patio 101 i. While certain embodiments and examples aredescribed below in the context of a home environment, the technologiesdescribed herein may be implemented in other types of environments. Insome embodiments, for example, the media playback system 100 can beimplemented in one or more commercial settings (e.g., a restaurant,mall, airport, hotel, a retail or other store), one or more vehicles(e.g., a sports utility vehicle, bus, car, a ship, a boat, an airplane),multiple environments (e.g., a combination of home and vehicleenvironments), and/or another suitable environment where multi-zoneaudio may be desirable.

The media playback system 100 can comprise one or more playback zones,some of which may correspond to the rooms in the environment 101. Themedia playback system 100 can be established with one or more playbackzones, after which additional zones may be added, or removed to form,for example, the configuration shown in FIG. 1A. Each zone may be givena name according to a different room or space such as the office 101 e,master bathroom 101 a, master bedroom 101 b, the second bedroom 101 c,kitchen 101 h, dining room 101 g, living room 101 f, and/or the patio101 i. In some aspects, a single playback zone may include multiplerooms or spaces. In certain aspects, a single room or space may includemultiple playback zones.

In the illustrated embodiment of FIG. 1A, the master bathroom 101 a, thesecond bedroom 101 c, the office 101 e, the living room 101 f, thedining room 101 g, the kitchen 101 h, and the outdoor patio 101 i eachinclude one playback device 110, and the master bedroom 101 b and theden 101 d include a plurality of playback devices 110. In the masterbedroom 101 b, the playback devices 110 l and 110 m may be configured,for example, to play back audio content in synchrony as individual onesof playback devices 110, as a bonded playback zone, as a consolidatedplayback device, and/or any combination thereof. Similarly, in the den101 d, the playback devices 110 h-j can be configured, for instance, toplay back audio content in synchrony as individual ones of playbackdevices 110, as one or more bonded playback devices, and/or as one ormore consolidated playback devices. Additional details regarding bondedand consolidated playback devices are described below with respect to,for example, FIGS. 1B and 1E and 1I-1M.

In some aspects, one or more of the playback zones in the environment101 may each be playing different audio content. For instance, a usermay be grilling on the patio 101 i and listening to hip hop music beingplayed by the playback device 110 c while another user is preparing foodin the kitchen 101 h and listening to classical music played by theplayback device 110 b. In another example, a playback zone may play thesame audio content in synchrony with another playback zone. Forinstance, the user may be in the office 101 e listening to the playbackdevice 110 f playing back the same hip hop music being played back byplayback device 110 c on the patio 101 i. In some aspects, the playbackdevices 110 c and 110 f play back the hip hop music in synchrony suchthat the user perceives that the audio content is being playedseamlessly (or at least substantially seamlessly) while moving betweendifferent playback zones. Additional details regarding audio playbacksynchronization among playback devices and/or zones can be found, forexample, in U.S. Pat. No. 8,234,395 entitled, “System and method forsynchronizing operations among a plurality of independently clockeddigital data processing devices,” which is incorporated herein byreference in its entirety.

a. Suitable Media Playback System

FIG. 1B is a schematic diagram of the media playback system 100 and acloud network 102. For ease of illustration, certain devices of themedia playback system 100 and the cloud network 102 are omitted fromFIG. 1B. One or more communication links 103 (referred to hereinafter as“the links 103”) communicatively couple the media playback system 100and the cloud network 102.

The links 103 can comprise, for example, one or more wired networks, oneor more wireless networks, one or more wide area networks (WAN), one ormore local area networks (LAN), one or more personal area networks(PAN), one or more telecommunication networks (e.g., one or more GlobalSystem for Mobiles (GSM) networks, Code Division Multiple Access (CDMA)networks, Long-Term Evolution (LTE) networks, 5G communication networknetworks, and/or other suitable data transmission protocol networks),etc. The cloud network 102 is configured to deliver media content (e.g.,audio content, video content, photographs, social media content) to themedia playback system 100 in response to a request transmitted from themedia playback system 100 via the links 103. In some embodiments, thecloud network 102 is further configured to receive data (e.g. voiceinput data) from the media playback system 100 and correspondinglytransmit commands and/or media content to the media playback system 100.

The cloud network 102 comprises computing devices 106 (identifiedseparately as a first computing device 106 a, a second computing device106 b, and a third computing device 106 c). The computing devices 106can comprise individual computers or servers, such as, for example, amedia streaming service server storing audio and/or other media content,a voice service server, a social media server, a media playback systemcontrol server, etc. In some embodiments, one or more of the computingdevices 106 comprise modules of a single computer or server. In certainembodiments, one or more of the computing devices 106 comprise one ormore modules, computers, and/or servers. Moreover, while the cloudnetwork 102 is described above in the context of a single cloud network,in some embodiments the cloud network 102 comprises a plurality of cloudnetworks comprising communicatively coupled computing devices.Furthermore, while the cloud network 102 is shown in FIG. 1B as havingthree of the computing devices 106, in some embodiments, the cloudnetwork 102 comprises fewer (or more than) three computing devices 106.

The media playback system 100 is configured to receive media contentfrom the networks 102 via the links 103. The received media content cancomprise, for example, a Uniform Resource Identifier (URI) and/or aUniform Resource Locator (URL). For instance, in some examples, themedia playback system 100 can stream, download, or otherwise obtain datafrom a URI or a URL corresponding to the received media content. Anetwork 104 communicatively couples the links 103 and at least a portionof the devices (e.g., one or more of the playback devices 110, NMDs 120,and/or control devices 130) of the media playback system 100. Thenetwork 104 can include, for example, a wireless network (e.g., a WiFinetwork, a Bluetooth, a Z-Wave network, a ZigBee, and/or other suitablewireless communication protocol network) and/or a wired network (e.g., anetwork comprising Ethernet, Universal Serial Bus (USB), and/or anothersuitable wired communication). As those of ordinary skill in the artwill appreciate, as used herein, “WiFi” can refer to several differentcommunication protocols including, for example, Institute of Electricaland Electronics Engineers (IEEE) 802.11a, 802.11b, 802.11g, 802.11n,802.11ac, 802.11ac, 802.11ad, 802.11af, 802.11ah, 802.11ai, 802.11aj,802.11aq, 802.11ax, 802.11ay, 802.15, etc. transmitted at 2.4 Gigahertz(GHz), 5 GHz, and/or another suitable frequency.

In some embodiments, the network 104 comprises a dedicated communicationnetwork that the media playback system 100 uses to transmit messagesbetween individual devices and/or to transmit media content to and frommedia content sources (e.g., one or more of the computing devices 106).In certain embodiments, the network 104 is configured to be accessibleonly to devices in the media playback system 100, thereby reducinginterference and competition with other household devices. In otherembodiments, however, the network 104 comprises an existing householdcommunication network (e.g., a household WiFi network). In someembodiments, the links 103 and the network 104 comprise one or more ofthe same networks. In some aspects, for example, the links 103 and thenetwork 104 comprise a telecommunication network (e.g., an LTE network,a 5G network). Moreover, in some embodiments, the media playback system100 is implemented without the network 104, and devices comprising themedia playback system 100 can communicate with each other, for example,via one or more direct connections, PANs, telecommunication networks,and/or other suitable communication links.

In some embodiments, audio content sources may be regularly added orremoved from the media playback system 100. In some embodiments, forexample, the media playback system 100 performs an indexing of mediaitems when one or more media content sources are updated, added to,and/or removed from the media playback system 100. The media playbacksystem 100 can scan identifiable media items in some or all foldersand/or directories accessible to the playback devices 110, and generateor update a media content database comprising metadata (e.g., title,artist, album, track length) and other associated information (e.g.,URIs, URLs) for each identifiable media item found. In some embodiments,for example, the media content database is stored on one or more of theplayback devices 110, network microphone devices 120, and/or controldevices 130.

In the illustrated embodiment of FIG. 1B, the playback devices 110 l and110 m comprise a group 107 a. The playback devices 110 l and 110 m canbe positioned in different rooms in a household and be grouped togetherin the group 107 a on a temporary or permanent basis based on user inputreceived at the control device 130 a and/or another control device 130in the media playback system 100. When arranged in the group 107 a, theplayback devices 110 l and 110 m can be configured to play back the sameor similar audio content in synchrony from one or more audio contentsources. In certain embodiments, for example, the group 107 a comprisesa bonded zone in which the playback devices 110 l and 110 m compriseleft audio and right audio channels, respectively, of multi-channelaudio content, thereby producing or enhancing a stereo effect of theaudio content. In some embodiments, the group 107 a includes additionalplayback devices 110. In other embodiments, however, the media playbacksystem 100 omits the group 107 a and/or other grouped arrangements ofthe playback devices 110. Additional details regarding groups and otherarrangements of playback devices are described in further detail belowwith respect to FIGS. 1-I through IM.

The media playback system 100 includes the NMDs 120 a and 120 d, eachcomprising one or more microphones configured to receive voiceutterances from a user. In the illustrated embodiment of FIG. 1B, theNMD 120 a is a standalone device and the NMD 120 d is integrated intothe playback device 110 n. The NMD 120 a, for example, is configured toreceive voice input 121 from a user 123. In some embodiments, the NMD120 a transmits data associated with the received voice input 121 to avoice assistant service (VAS) configured to (i) process the receivedvoice input data and (ii) transmit a corresponding command to the mediaplayback system 100. In some aspects, for example, the computing device106 c comprises one or more modules and/or servers of a VAS (e.g., a VASoperated by one or more of SONOS®, AMAZON®, GOOGLE® APPLE®, MICROSOFT®).The computing device 106 c can receive the voice input data from the NMD120 a via the network 104 and the links 103. In response to receivingthe voice input data, the computing device 106 c processes the voiceinput data (i.e., “Play Hey Jude by The Beatles”), and determines thatthe processed voice input includes a command to play a song (e.g., “HeyJude”). The computing device 106 c accordingly transmits commands to themedia playback system 100 to play back “Hey Jude” by the Beatles from asuitable media service (e.g., via one or more of the computing devices106) on one or more of the playback devices 110.

b. Suitable Playback Devices

FIG. 1C is a block diagram of the playback device 110 a comprising aninput/output 111. The input/output 111 can include an analog I/O 111 a(e.g., one or more wires, cables, and/or other suitable communicationlinks configured to carry analog signals) and/or a digital I/O 111 b(e.g., one or more wires, cables, or other suitable communication linksconfigured to carry digital signals). In some embodiments, the analogI/O 111 a is an audio line-in input connection comprising, for example,an auto-detecting 3.5 mm audio line-in connection. In some embodiments,the digital I/O 111 b comprises a Sony/Philips Digital Interface Format(S/PDIF) communication interface and/or cable and/or a Toshiba Link(TOSLINK) cable. In some embodiments, the digital I/O 111 b comprises anHigh-Definition Multimedia Interface (HDMI) interface and/or cable. Insome embodiments, the digital I/O 111 b includes one or more wirelesscommunication links comprising, for example, a radio frequency (RF),infrared, WiFi, Bluetooth, or another suitable communication protocol.In certain embodiments, the analog I/O 111 a and the digital I/O 111 bcomprise interfaces (e.g., ports, plugs, jacks) configured to receiveconnectors of cables transmitting analog and digital signals,respectively, without necessarily including cables.

The playback device 110 a, for example, can receive media content (e.g.,audio content comprising music and/or other sounds) from a local audiosource 105 via the input/output 111 (e.g., a cable, a wire, a PAN, aBluetooth connection, an ad hoc wired or wireless communication network,and/or another suitable communication link). The local audio source 105can comprise, for example, a mobile device (e.g., a smartphone, atablet, a laptop computer) or another suitable audio component (e.g., atelevision, a desktop computer, an amplifier, a phonograph, a Blu-rayplayer, a memory storing digital media files). In some aspects, thelocal audio source 105 includes local music libraries on a smartphone, acomputer, a networked-attached storage (NAS), and/or another suitabledevice configured to store media files. In certain embodiments, one ormore of the playback devices 110, NMDs 120, and/or control devices 130comprise the local audio source 105. In other embodiments, however, themedia playback system omits the local audio source 105 altogether. Insome embodiments, the playback device 110 a does not include aninput/output 111 and receives all audio content via the network 104.

The playback device 110 a further comprises electronics 112, a userinterface 113 (e.g., one or more buttons, knobs, dials, touch-sensitivesurfaces, displays, touchscreens), and one or more transducers 114(referred to hereinafter as “the transducers 114”). The electronics 112is configured to receive audio from an audio source (e.g., the localaudio source 105) via the input/output 111, one or more of the computingdevices 106 a-c via the network 104 (FIG. 1B)), amplify the receivedaudio, and output the amplified audio for playback via one or more ofthe transducers 114. In some embodiments, the playback device 110 aoptionally includes one or more microphones 115 (e.g., a singlemicrophone, a plurality of microphones, a microphone array) (hereinafterreferred to as “the microphones 115”). In certain embodiments, forexample, the playback device 110 a having one or more of the optionalmicrophones 115 can operate as an NMD configured to receive voice inputfrom a user and correspondingly perform one or more operations based onthe received voice input.

In the illustrated embodiment of FIG. 1C, the electronics 112 compriseone or more processors 112 a (referred to hereinafter as “the processors112 a”), memory 112 b, software components 112 c, a network interface112 d, one or more audio processing components 112 g (referred tohereinafter as “the audio components 112 g”), one or more audioamplifiers 112 h (referred to hereinafter as “the amplifiers 112 h”),and power 112 i (e.g., one or more power supplies, power cables, powerreceptacles, batteries, induction coils, Power-over Ethernet (POE)interfaces, and/or other suitable sources of electric power). In someembodiments, the electronics 112 optionally include one or more othercomponents 112 j (e.g., one or more sensors, video displays,touchscreens, battery charging bases).

The processors 112 a can comprise clock-driven computing component(s)configured to process data, and the memory 112 b can comprise acomputer-readable medium (e.g., a tangible, non-transitorycomputer-readable medium, data storage loaded with one or more of thesoftware components 112 c) configured to store instructions forperforming various operations and/or functions. The processors 112 a areconfigured to execute the instructions stored on the memory 112 b toperform one or more of the operations. The operations can include, forexample, causing the playback device 110 a to retrieve audio data froman audio source (e.g., one or more of the computing devices 106 a-c(FIG. 1B)), and/or another one of the playback devices 110. In someembodiments, the operations further include causing the playback device110 a to send audio data to another one of the playback devices 110 aand/or another device (e.g., one of the NMDs 120). Certain embodimentsinclude operations causing the playback device 110 a to pair withanother of the one or more playback devices 110 to enable amulti-channel audio environment (e.g., a stereo pair, a bonded zone).

The processors 112 a can be further configured to perform operationscausing the playback device 110 a to synchronize playback of audiocontent with another of the one or more playback devices 110. As thoseof ordinary skill in the art will appreciate, during synchronousplayback of audio content on a plurality of playback devices, a listenerwill preferably be unable to perceive time-delay differences betweenplayback of the audio content by the playback device 110 a and the otherone or more other playback devices 110. Additional details regardingaudio playback synchronization among playback devices can be found, forexample, in U.S. Pat. No. 8,234,395, which was incorporated by referenceabove.

In some embodiments, the memory 112 b is further configured to storedata associated with the playback device 110 a, such as one or morezones and/or zone groups of which the playback device 110 a is a member,audio sources accessible to the playback device 110 a, and/or a playbackqueue that the playback device 110 a (and/or another of the one or moreplayback devices) can be associated with. The stored data can compriseone or more state variables that are periodically updated and used todescribe a state of the playback device 110 a. The memory 112 b can alsoinclude data associated with a state of one or more of the other devices(e.g., the playback devices 110, NMDs 120, control devices 130) of themedia playback system 100. In some aspects, for example, the state datais shared during predetermined intervals of time (e.g., every 5 seconds,every 10 seconds, every 60 seconds) among at least a portion of thedevices of the media playback system 100, so that one or more of thedevices have the most recent data associated with the media playbacksystem 100.

The network interface 112 d is configured to facilitate a transmissionof data between the playback device 110 a and one or more other deviceson a data network such as, for example, the links 103 and/or the network104 (FIG. 1B). The network interface 112 d is configured to transmit andreceive data corresponding to media content (e.g., audio content, videocontent, text, photographs) and other signals (e.g., non-transitorysignals) comprising digital packet data including an Internet Protocol(IP)-based source address and/or an IP-based destination address. Thenetwork interface 112 d can parse the digital packet data such that theelectronics 112 properly receives and processes the data destined forthe playback device 110 a.

In the illustrated embodiment of FIG. 1C, the network interface 112 dcomprises one or more wireless interfaces 112 e (referred to hereinafteras “the wireless interface 112 e”). The wireless interface 112 e (e.g.,a suitable interface comprising one or more antennae) can be configuredto wirelessly communicate with one or more other devices (e.g., one ormore of the other playback devices 110, NMDs 120, and/or control devices130) that are communicatively coupled to the network 104 (FIG. 1B) inaccordance with a suitable wireless communication protocol (e.g., WiFi,Bluetooth, LTE). In some embodiments, the network interface 112 doptionally includes a wired interface 112 f (e.g., an interface orreceptacle configured to receive a network cable such as an Ethernet, aUSB-A, USB-C, and/or Thunderbolt cable) configured to communicate over awired connection with other devices in accordance with a suitable wiredcommunication protocol. In certain embodiments, the network interface112 d includes the wired interface 112 f and excludes the wirelessinterface 112 e. In some embodiments, the electronics 112 excludes thenetwork interface 112 d altogether and transmits and receives mediacontent and/or other data via another communication path (e.g., theinput/output 111).

The audio processing components 112 g are configured to process and/orfilter data comprising media content received by the electronics 112(e.g., via the input/output 111 and/or the network interface 112 d) toproduce output audio signals. In some embodiments, the audio processingcomponents 112 g comprise, for example, one or more digital-to-analogconverters (DAC), audio preprocessing components, audio enhancementcomponents, a digital signal processors (DSPs), and/or other suitableaudio processing components, modules, circuits, etc. In certainembodiments, one or more of the audio processing components 112 g cancomprise one or more subcomponents of the processors 112 a. In someembodiments, the electronics 112 omits the audio processing components112 g. In some aspects, for example, the processors 112 a executeinstructions stored on the memory 112 b to perform audio processingoperations to produce the output audio signals.

The amplifiers 112 h are configured to receive and amplify the audiooutput signals produced by the audio processing components 112 g and/orthe processors 112 a. The amplifiers 112 h can comprise electronicdevices and/or components configured to amplify audio signals to levelssufficient for driving one or more of the transducers 114. In someembodiments, for example, the amplifiers 112 h include one or moreswitching or class-D power amplifiers. In other embodiments, however,the amplifiers include one or more other types of power amplifiers(e.g., linear gain power amplifiers, class-A amplifiers, class-Bamplifiers, class-AB amplifiers, class-C amplifiers, class-D amplifiers,class-E amplifiers, class-F amplifiers, class-G and/or class Hamplifiers, and/or another suitable type of power amplifier). In certainembodiments, the amplifiers 112 h comprise a suitable combination of twoor more of the foregoing types of power amplifiers. Moreover, in someembodiments, individual ones of the amplifiers 112 h correspond toindividual ones of the transducers 114. In other embodiments, however,the electronics 112 includes a single one of the amplifiers 112 hconfigured to output amplified audio signals to a plurality of thetransducers 114. In some other embodiments, the electronics 112 omitsthe amplifiers 112 h.

The transducers 114 (e.g., one or more speakers and/or speaker drivers)receive the amplified audio signals from the amplifier 112 h and renderor output the amplified audio signals as sound (e.g., audible soundwaves having a frequency between about 20 Hertz (Hz) and 20 kilohertz(kHz)). In some embodiments, the transducers 114 can comprise a singletransducer. In other embodiments, however, the transducers 114 comprisea plurality of audio transducers. In some embodiments, the transducers114 comprise more than one type of transducer. For example, thetransducers 114 can include one or more low frequency transducers (e.g.,subwoofers, woofers), mid-range frequency transducers (e.g., mid-rangetransducers, mid-woofers), and one or more high frequency transducers(e.g., one or more tweeters). As used herein, “low frequency” cangenerally refer to audible frequencies below about 500 Hz, “mid-rangefrequency” can generally refer to audible frequencies between about 500Hz and about 2 kHz, and “high frequency” can generally refer to audiblefrequencies above 2 kHz. In certain embodiments, however, one or more ofthe transducers 114 comprise transducers that do not adhere to theforegoing frequency ranges. For example, one of the transducers 114 maycomprise a mid-woofer transducer configured to output sound atfrequencies between about 200 Hz and about 5 kHz.

By way of illustration, SONOS, Inc. presently offers (or has offered)for sale certain playback devices including, for example, a “SONOS ONE,”“PLAY:1,” “PLAY:3,” “PLAY:5,” “PLAYBAR,” “PLAYBASE,” “CONNECT:AMP,”“CONNECT,” and “SUB.” Other suitable playback devices may additionallyor alternatively be used to implement the playback devices of exampleembodiments disclosed herein. Additionally, one of ordinary skilled inthe art will appreciate that a playback device is not limited to theexamples described herein or to SONOS product offerings. In someembodiments, for example, one or more playback devices 110 compriseswired or wireless headphones (e.g., over-the-ear headphones, on-earheadphones, in-ear earphones). In other embodiments, one or more of theplayback devices 110 comprise a docking station and/or an interfaceconfigured to interact with a docking station for personal mobile mediaplayback devices. In certain embodiments, a playback device may beintegral to another device or component such as a television, a lightingfixture, or some other device for indoor or outdoor use. In someembodiments, a playback device omits a user interface and/or one or moretransducers. For example, FIG. 1D is a block diagram of a playbackdevice 110 p comprising the input/output 111 and electronics 112 withoutthe user interface 113 or transducers 114.

FIG. 1E is a block diagram of a bonded playback device 110 q comprisingthe playback device 110 a (FIG. 1C) sonically bonded with the playbackdevice 110 i (e.g., a subwoofer) (FIG. 1A). In the illustratedembodiment, the playback devices 110 a and 110 i are separate ones ofthe playback devices 110 housed in separate enclosures. In someembodiments, however, the bonded playback device 110 q comprises asingle enclosure housing both the playback devices 110 a and 110 i. Thebonded playback device 110 q can be configured to process and reproducesound differently than an unbonded playback device (e.g., the playbackdevice 110 a of FIG. 1C) and/or paired or bonded playback devices (e.g.,the playback devices 110 l and 110 m of FIG. 1B). In some embodiments,for example, the playback device 110 a is full-range playback deviceconfigured to render low frequency, mid-range frequency, and highfrequency audio content, and the playback device 110 i is a subwooferconfigured to render low frequency audio content. In some aspects, theplayback device 110 a, when bonded with the first playback device, isconfigured to render only the mid-range and high frequency components ofa particular audio content, while the playback device 110 i renders thelow frequency component of the particular audio content. In someembodiments, the bonded playback device 110 q includes additionalplayback devices and/or another bonded playback device. Additionalplayback device embodiments are described in further detail below withrespect to FIGS. 2A-3D.

c. Suitable Network Microphone Devices (NMDs)

FIG. 1F is a block diagram of the NMD 120 a (FIGS. 1A and 1B). The NMD120 a includes one or more voice processing components 124 (hereinafter“the voice components 124”) and several components described withrespect to the playback device 110 a (FIG. 1C) including the processors112 a, the memory 112 b, and the microphones 115. The NMD 120 aoptionally comprises other components also included in the playbackdevice 110 a (FIG. 1C), such as the user interface 113 and/or thetransducers 114. In some embodiments, the NMD 120 a is configured as amedia playback device (e.g., one or more of the playback devices 110),and further includes, for example, one or more of the audio processingcomponents 112 g (FIG. 1C), the transducers 114, and/or other playbackdevice components. In certain embodiments, the NMD 120 a comprises anInternet of Things (IoT) device such as, for example, a thermostat,alarm panel, fire and/or smoke detector, etc. In some embodiments, theNMD 120 a comprises the microphones 115, the voice processing 124, andonly a portion of the components of the electronics 112 described abovewith respect to FIG. 1B. In some aspects, for example, the NMD 120 aincludes the processor 112 a and the memory 112 b (FIG. 1B), whileomitting one or more other components of the electronics 112. In someembodiments, the NMD 120 a includes additional components (e.g., one ormore sensors, cameras, thermometers, barometers, hygrometers).

In some embodiments, an NMD can be integrated into a playback device.FIG. 1G is a block diagram of a playback device 110 r comprising an NMD120 d. The playback device 110 r can comprise many or all of thecomponents of the playback device 110 a and further include themicrophones 115 and voice processing 124 (FIG. 1F). The playback device110 r optionally includes an integrated control device 130 c. Thecontrol device 130 c can comprise, for example, a user interface (e.g.,the user interface 113 of FIG. 1B) configured to receive user input(e.g., touch input, voice input) without a separate control device. Inother embodiments, however, the playback device 110 r receives commandsfrom another control device (e.g., the control device 130 a of FIG. 1B).Additional NMD embodiments are described in further detail below withrespect to FIGS. 3A-3F.

Referring again to FIG. 1F, the microphones 115 are configured toacquire, capture, and/or receive sound from an environment (e.g., theenvironment 101 of FIG. 1A) and/or a room in which the NMD 120 a ispositioned. The received sound can include, for example, vocalutterances, audio played back by the NMD 120 a and/or another playbackdevice, background voices, ambient sounds, etc. The microphones 115convert the received sound into electrical signals to produce microphonedata. The voice processing 124 receives and analyzes the microphone datato determine whether a voice input is present in the microphone data.The voice input can comprise, for example, an activation word followedby an utterance including a user request. As those of ordinary skill inthe art will appreciate, an activation word is a word or other audio cuethat signifying a user voice input. For instance, in querying theAMAZON® VAS, a user might speak the activation word “Alexa.” Otherexamples include “Ok, Google” for invoking the GOOGLE® VAS and “Hey,Siri” for invoking the APPLE® VAS.

After detecting the activation word, voice processing 124 monitors themicrophone data for an accompanying user request in the voice input. Theuser request may include, for example, a command to control athird-party device, such as a thermostat (e.g., NEST® thermostat), anillumination device (e.g., a PHILIPS HUE® lighting device), or a mediaplayback device (e.g., a Sonos® playback device). For example, a usermight speak the activation word “Alexa” followed by the utterance “setthe thermostat to 68 degrees” to set a temperature in a home (e.g., theenvironment 101 of FIG. 1A). The user might speak the same activationword followed by the utterance “turn on the living room” to turn onillumination devices in a living room area of the home. The user maysimilarly speak an activation word followed by a request to play aparticular song, an album, or a playlist of music on a playback devicein the home. Additional description regarding receiving and processingvoice input data can be found in further detail below with respect toFIGS. 3A-3F.

d. Suitable Control Devices

FIG. 1H is a partially schematic diagram of the control device 130 a(FIGS. 1A and 1B). As used herein, the term “control device” can be usedinterchangeably with “controller” or “control system.” Among otherfeatures, the control device 130 a is configured to receive user inputrelated to the media playback system 100 and, in response, cause one ormore devices in the media playback system 100 to perform an action(s) oroperation(s) corresponding to the user input. In the illustratedembodiment, the control device 130 a comprises a smartphone (e.g., aniPhone™, an Android phone) on which media playback system controllerapplication software is installed. In some embodiments, the controldevice 130 a comprises, for example, a tablet (e.g., an iPad™), acomputer (e.g., a laptop computer, a desktop computer), and/or anothersuitable device (e.g., a television, an automobile audio head unit, anIoT device). In certain embodiments, the control device 130 a comprisesa dedicated controller for the media playback system 100. In otherembodiments, as described above with respect to FIG. 1G, the controldevice 130 a is integrated into another device in the media playbacksystem 100 (e.g., one more of the playback devices 110, NMDs 120, and/orother suitable devices configured to communicate over a network).

The control device 130 a includes electronics 132, a user interface 133,one or more speakers 134, and one or more microphones 135. Theelectronics 132 comprise one or more processors 132 a (referred tohereinafter as “the processors 132 a”), a memory 132 b, softwarecomponents 132 c, and a network interface 132 d. The processor 132 a canbe configured to perform functions relevant to facilitating user access,control, and configuration of the media playback system 100. The memory132 b can comprise data storage that can be loaded with one or more ofthe software components executable by the processor 302 to perform thosefunctions. The software components 132 c can comprise applicationsand/or other executable software configured to facilitate control of themedia playback system 100. The memory 112 b can be configured to store,for example, the software components 132 c, media playback systemcontroller application software, and/or other data associated with themedia playback system 100 and the user.

The network interface 132 d is configured to facilitate networkcommunications between the control device 130 a and one or more otherdevices in the media playback system 100, and/or one or more remotedevices. In some embodiments, the network interface 132 d is configuredto operate according to one or more suitable communication industrystandards (e.g., infrared, radio, wired standards including IEEE 802.3,wireless standards including IEEE 802.11a, 802.11b, 802.11g, 802.11n,802.11ac, 802.15, 4G, LTE). The network interface 132 d can beconfigured, for example, to transmit data to and/or receive data fromthe playback devices 110, the NMDs 120, other ones of the controldevices 130, one of the computing devices 106 of FIG. 1B, devicescomprising one or more other media playback systems, etc. Thetransmitted and/or received data can include, for example, playbackdevice control commands, state variables, playback zone and/or zonegroup configurations. For instance, based on user input received at theuser interface 133, the network interface 132 d can transmit a playbackdevice control command (e.g., volume control, audio playback control,audio content selection) from the control device 304 to one or more ofplayback devices. The network interface 132 d can also transmit and/orreceive configuration changes such as, for example, adding/removing oneor more playback devices to/from a zone, adding/removing one or morezones to/from a zone group, forming a bonded or consolidated player,separating one or more playback devices from a bonded or consolidatedplayer, among others. Additional description of zones and groups can befound below with respect to FIGS. 1-I through 1M.

The user interface 133 is configured to receive user input and canfacilitate control of the media playback system 100. The user interface133 includes media content art 133a (e.g., album art, lyrics, videos), aplayback status indicator 133 b (e.g., an elapsed and/or remaining timeindicator), media content information region 133 c, a playback controlregion 133 d, and a zone indicator 133 e. The media content informationregion 133 c can include a display of relevant information (e.g., title,artist, album, genre, release year) about media content currentlyplaying and/or media content in a queue or playlist. The playbackcontrol region 133 d can include selectable (e.g., via touch inputand/or via a cursor or another suitable selector) icons to cause one ormore playback devices in a selected playback zone or zone group toperform playback actions such as, for example, play or pause, fastforward, rewind, skip to next, skip to previous, enter/exit shufflemode, enter/exit repeat mode, enter/exit cross fade mode, etc. Theplayback control region 133 d may also include selectable icons tomodify equalization settings, playback volume, and/or other suitableplayback actions. In the illustrated embodiment, the user interface 133comprises a display presented on a touch screen interface of asmartphone (e.g., an iPhone™, an Android phone). In some embodiments,however, user interfaces of varying formats, styles, and interactivesequences may alternatively be implemented on one or more networkdevices to provide comparable control access to a media playback system.

The one or more speakers 134 (e.g., one or more transducers) can beconfigured to output sound to the user of the control device 130 a. Insome embodiments, the one or more speakers comprise individualtransducers configured to correspondingly output low frequencies,mid-range frequencies, and/or high frequencies. In some aspects, forexample, the control device 130 a is configured as a playback device(e.g., one of the playback devices 110). Similarly, in some embodimentsthe control device 130 a is configured as an NMD (e.g., one of the NMDs120), receiving voice commands and other sounds via the one or moremicrophones 135.

The one or more microphones 135 can comprise, for example, one or morecondenser microphones, electret condenser microphones, dynamicmicrophones, and/or other suitable types of microphones or transducers.In some embodiments, two or more of the microphones 135 are arranged tocapture location information of an audio source (e.g., voice, audiblesound) and/or configured to facilitate filtering of background noise.Moreover, in certain embodiments, the control device 130 a is configuredto operate as playback device and an NMD. In other embodiments, however,the control device 130 a omits the one or more speakers 134 and/or theone or more microphones 135. For instance, the control device 130 a maycomprise a device (e.g., a thermostat, an IoT device, a network device)comprising a portion of the electronics 132 and the user interface 133(e.g., a touch screen) without any speakers or microphones. Additionalcontrol device embodiments are described in further detail below withrespect to FIGS. 4A-4D and 5.

e. Suitable Playback Device Configurations

FIGS. 1-1 through 1M show example configurations of playback devices inzones and zone groups. Referring first to FIG. 1M, in one example, asingle playback device may belong to a zone. For example, the playbackdevice 110 g in the second bedroom 101 c (FIG. 1A) may belong to Zone C.In some implementations described below, multiple playback devices maybe “bonded” to form a “bonded pair” which together form a single zone.For example, the playback device 110 l (e.g., a left playback device)can be bonded to the playback device 110 l (e.g., a left playbackdevice) to form Zone A. Bonded playback devices may have differentplayback responsibilities (e.g., channel responsibilities). In anotherimplementation described below, multiple playback devices may be mergedto form a single zone. For example, the playback device 110 h (e.g., afront playback device) may be merged with the playback device 110 i(e.g., a subwoofer), and the playback devices 110 j and 110 k (e.g.,left and right surround speakers, respectively) to form a single Zone D.In another example, the playback devices 110 g and 110 h can be mergedto form a merged group or a zone group 108 b. The merged playbackdevices 110 g and 110 h may not be specifically assigned differentplayback responsibilities. That is, the merged playback devices 110 hand 110 i may, aside from playing audio content in synchrony, each playaudio content as they would if they were not merged.

Each zone in the media playback system 100 may be provided for controlas a single user interface (UI) entity. For example, Zone A may beprovided as a single entity named Master Bathroom. Zone B may beprovided as a single entity named Master Bedroom. Zone C may be providedas a single entity named Second Bedroom.

Playback devices that are bonded may have different playbackresponsibilities, such as responsibilities for certain audio channels.For example, as shown in FIG. 1-I, the playback devices 110 l and 110 mmay be bonded so as to produce or enhance a stereo effect of audiocontent. In this example, the playback device 110 l may be configured toplay a left channel audio component, while the playback device 110 k maybe configured to play a right channel audio component. In someimplementations, such stereo bonding may be referred to as “pairing.”

Additionally, bonded playback devices may have additional and/ordifferent respective speaker drivers. As shown in FIG. 1J, the playbackdevice 110 h named Front may be bonded with the playback device 110 inamed SUB. The Front device 110 h can be configured to render a range ofmid to high frequencies and the SUB device 110 i can be configuredrender low frequencies. When unbonded, however, the Front device 110 hcan be configured render a full range of frequencies. As anotherexample, FIG. 1K shows the Front and SUB devices 110 h and 110 i furtherbonded with Left and Right playback devices 110 j and 110 k,respectively. In some implementations, the Right and Left devices 110 jand 102 k can be configured to form surround or “satellite” channels ofa home theater system. The bonded playback devices 110 h, 110 i, 110 j,and 110 k may form a single Zone D (FIG. 1M).

Playback devices that are merged may not have assigned playbackresponsibilities, and may each render the full range of audio contentthe respective playback device is capable of. Nevertheless, mergeddevices may be represented as a single UI entity (i.e., a zone, asdiscussed above). For instance, the playback devices 110 a and 110 n themaster bathroom have the single UI entity of Zone A. In one embodiment,the playback devices 110 a and 110 n may each output the full range ofaudio content each respective playback devices 110 a and 110 n arecapable of, in synchrony.

In some embodiments, an NMD is bonded or merged with another device soas to form a zone. For example, the NMD 120 b may be bonded with theplayback device 110 e, which together form Zone F, named Living Room. Inother embodiments, a stand-alone network microphone device may be in azone by itself. In other embodiments, however, a stand-alone networkmicrophone device may not be associated with a zone. Additional detailsregarding associating network microphone devices and playback devices asdesignated or default devices may be found, for example, in previouslyreferenced U.S. patent application Ser. No. 15/438,749.

Zones of individual, bonded, and/or merged devices may be grouped toform a zone group. For example, referring to FIG. 1M, Zone A may begrouped with Zone B to form a zone group 108 a that includes the twozones. Similarly, Zone G may be grouped with Zone H to form the zonegroup 108 b. As another example, Zone A may be grouped with one or moreother Zones C-I. The Zones A-I may be grouped and ungrouped in numerousways. For example, three, four, five, or more (e.g., all) of the ZonesA-I may be grouped. When grouped, the zones of individual and/or bondedplayback devices may play back audio in synchrony with one another, asdescribed in previously referenced U.S. Pat. No. 8,234,395. Playbackdevices may be dynamically grouped and ungrouped to form new ordifferent groups that synchronously play back audio content.

In various implementations, the zones in an environment may be thedefault name of a zone within the group or a combination of the names ofthe zones within a zone group. For example, Zone Group 108 b can have beassigned a name such as “Dining+Kitchen”, as shown in FIG. 1M. In someembodiments, a zone group may be given a unique name selected by a user.

Certain data may be stored in a memory of a playback device (e.g., thememory 112 b of FIG. 1C) as one or more state variables that areperiodically updated and used to describe the state of a playback zone,the playback device(s), and/or a zone group associated therewith. Thememory may also include the data associated with the state of the otherdevices of the media system, and shared from time to time among thedevices so that one or more of the devices have the most recent dataassociated with the system.

In some embodiments, the memory may store instances of various variabletypes associated with the states. Variables instances may be stored withidentifiers (e.g., tags) corresponding to type. For example, certainidentifiers may be a first type “al” to identify playback device(s) of azone, a second type “b 1” to identify playback device(s) that may bebonded in the zone, and a third type “cl” to identify a zone group towhich the zone may belong. As a related example, identifiers associatedwith the second bedroom 101 c may indicate that the playback device isthe only playback device of the Zone C and not in a zone group.Identifiers associated with the Den may indicate that the Den is notgrouped with other zones but includes bonded playback devices 110 h-110k. Identifiers associated with the Dining Room may indicate that theDining Room is part of the Dining+Kitchen zone group 108 b and thatdevices 110 b and 110 d are grouped (FIG. 1L). Identifiers associatedwith the Kitchen may indicate the same or similar information by virtueof the Kitchen being part of the Dining+Kitchen zone group 108 b. Otherexample zone variables and identifiers are described below.

In yet another example, the media playback system 100 may variables oridentifiers representing other associations of zones and zone groups,such as identifiers associated with Areas, as shown in FIG. 1M. An areamay involve a cluster of zone groups and/or zones not within a zonegroup. For instance, FIG. 1M shows an Upper Area 109 a including ZonesA-D, and a Lower Area 109 b including Zones E-I. In one aspect, an Areamay be used to invoke a cluster of zone groups and/or zones that shareone or more zones and/or zone groups of another cluster. In anotheraspect, this differs from a zone group, which does not share a zone withanother zone group. Further examples of techniques for implementingAreas may be found, for example, in U.S. application Ser. No. 15/682,506filed Aug. 21, 2017 and titled “Room Association Based on Name,” andU.S. Pat. No. 8,483,853 filed Sep. 11, 2007, and titled “Controlling andmanipulating groupings in a multi-zone media system.” Each of theseapplications is incorporated herein by reference in its entirety. Insome embodiments, the media playback system 100 may not implement Areas,in which case the system may not store variables associated with Areas.

III. Example Systems and Devices

FIG. 2A is a front isometric view of a playback device 210 configured inaccordance with aspects of the disclosed technology. FIG. 2B is a frontisometric view of the playback device 210 without a grille 216 e. FIG.2C is an exploded view of the playback device 210. Referring to FIGS.2A-2C together, the playback device 210 comprises a housing 216 thatincludes an upper portion 216 a, a right or first side portion 216 b, alower portion 216 c, a left or second side portion 216 d, the grille 216e, and a rear portion 216 f A plurality of fasteners 216 g (e.g., one ormore screws, rivets, clips) attaches a frame 216 h to the housing 216. Acavity 216 j (FIG. 2C) in the housing 216 is configured to receive theframe 216 h and electronics 212. The frame 216 h is configured to carrya plurality of transducers 214 (identified individually in FIG. 2B astransducers 214 a-f). The electronics 212 (e.g., the electronics 112 ofFIG. 1C) is configured to receive audio content from an audio source andsend electrical signals corresponding to the audio content to thetransducers 214 for playback.

The transducers 214 are configured to receive the electrical signalsfrom the electronics 112, and further configured to convert the receivedelectrical signals into audible sound during playback. For instance, thetransducers 214 a-c (e.g., tweeters) can be configured to output highfrequency sound (e.g., sound waves having a frequency greater than about2 kHz). The transducers 214 d-f (e.g., mid-woofers, woofers, midrangespeakers) can be configured output sound at frequencies lower than thetransducers 214 a-c (e.g., sound waves having a frequency lower thanabout 2 kHz). In some embodiments, the playback device 210 includes anumber of transducers different than those illustrated in FIGS. 2A-2C.For example, as described in further detail below with respect to FIGS.3A-3C, the playback device 210 can include fewer than six transducers(e.g., one, two, three). In other embodiments, however, the playbackdevice 210 includes more than six transducers (e.g., nine, ten).Moreover, in some embodiments, all or a portion of the transducers 214are configured to operate as a phased array to desirably adjust (e.g.,narrow or widen) a radiation pattern of the transducers 214, therebyaltering a user's perception of the sound emitted from the playbackdevice 210.

In the illustrated embodiment of FIGS. 2A-2C, a filter 216 i is axiallyaligned with the transducer 214 b. The filter 216 i can be configured todesirably attenuate a predetermined range of frequencies that thetransducer 214 b outputs to improve sound quality and a perceived soundstage output collectively by the transducers 214. In some embodiments,however, the playback device 210 omits the filter 216 i. In otherembodiments, the playback device 210 includes one or more additionalfilters aligned with the transducers 214 b and/or at least another ofthe transducers 214.

FIGS. 3A and 3B are front and right isometric side views, respectively,of an NMD 320 configured in accordance with embodiments of the disclosedtechnology. FIG. 3C is an exploded view of the NMD 320. FIG. 3D is anenlarged view of a portion of FIG. 3B including a user interface 313 ofthe NMD 320. Referring first to FIGS. 3A-3C, the NMD 320 includes ahousing 316 comprising an upper portion 316 a, a lower portion 316 b andan intermediate portion 316 c (e.g., a grille). A plurality of ports,holes or apertures 316 d in the upper portion 316 a allow sound to passthrough to one or more microphones 315 (FIG. 3C) positioned within thehousing 316. The one or more microphones 316 are configured to receivedsound via the apertures 316 d and produce electrical signals based onthe received sound. In the illustrated embodiment, a frame 316 e (FIG.3C) of the housing 316 surrounds cavities 316 f and 316 g configured tohouse, respectively, a first transducer 314 a (e.g., a tweeter) and asecond transducer 314 b (e.g., a mid-woofer, a midrange speaker, awoofer). In other embodiments, however, the NMD 320 includes a singletransducer, or more than two (e.g., two, five, six) transducers. Incertain embodiments, the NMD 320 omits the transducers 314 a and 314 baltogether.

Electronics 312 (FIG. 3C) includes components configured to drive thetransducers 314 a and 314 b, and further configured to analyze audiodata corresponding to the electrical signals produced by the one or moremicrophones 315. In some embodiments, for example, the electronics 312comprises many or all of the components of the electronics 112 describedabove with respect to FIG. 1C. In certain embodiments, the electronics312 includes components described above with respect to FIG. 1F such as,for example, the one or more processors 112 a, the memory 112 b, thesoftware components 112 c, the network interface 112 d, etc. In someembodiments, the electronics 312 includes additional suitable components(e.g., proximity or other sensors).

Referring to FIG. 3D, the user interface 313 includes a plurality ofcontrol surfaces (e.g., buttons, knobs, capacitive surfaces) including afirst control surface 313 a (e.g., a previous control), a second controlsurface 313 b (e.g., a next control), and a third control surface 313 c(e.g., a play and/or pause control). A fourth control surface 313 d isconfigured to receive touch input corresponding to activation anddeactivation of the one or microphones 315. A first indicator 313 e(e.g., one or more light emitting diodes (LEDs) or another suitableilluminator) can be configured to illuminate only when the one or moremicrophones 315 are activated. A second indicator 313 f (e.g., one ormore LEDs) can be configured to remain solid during normal operation andto blink or otherwise change from solid to indicate a detection of voiceactivity. In some embodiments, the user interface 313 includesadditional or fewer control surfaces and illuminators. In oneembodiment, for example, the user interface 313 includes the firstindicator 313 e, omitting the second indicator 313 f Moreover, incertain embodiments, the NMD 320 comprises a playback device and acontrol device, and the user interface 313 comprises the user interfaceof the control device.

Referring to FIGS. 3A-3D together, the NMD 320 is configured to receivevoice commands from one or more adjacent users via the one or moremicrophones 315. As described above with respect to FIG. 1B, the one ormore microphones 315 can acquire, capture, or record sound in a vicinity(e.g., a region within 10 m or less of the NMD 320) and transmitelectrical signals corresponding to the recorded sound to theelectronics 312. The electronics 312 can process the electrical signalsand can analyze the resulting audio data to determine a presence of oneor more voice commands (e.g., one or more activation words). In someembodiments, for example, after detection of one or more suitable voicecommands, the NMD 320 is configured to transmit a portion of therecorded audio data to another device and/or a remote server (e.g., oneor more of the computing devices 106 of FIG. 1B) for further analysis.The remote server can analyze the audio data, determine an appropriateaction based on the voice command, and transmit a message to the NMD 320to perform the appropriate action. For instance, a user may speak“Sonos, play Michael Jackson.” The NMD 320 can, via the one or moremicrophones 315, record the user's voice utterance, determine thepresence of a voice command, and transmit the audio data having thevoice command to a remote server (e.g., one or more of the remotecomputing devices 106 of FIG. 1B, one or more servers of a VAS and/oranother suitable service). The remote server can analyze the audio dataand determine an action corresponding to the command. The remote servercan then transmit a command to the NMD 320 to perform the determinedaction (e.g., play back audio content related to Michael Jackson). TheNMD 320 can receive the command and play back the audio content relatedto Michael Jackson from a media content source. As described above withrespect to FIG. 1B, suitable content sources can include a device orstorage communicatively coupled to the NMD 320 via a LAN (e.g., thenetwork 104 of FIG. 1B), a remote server (e.g., one or more of theremote computing devices 106 of FIG. 1B), etc. In certain embodiments,however, the NMD 320 determines and/or performs one or more actionscorresponding to the one or more voice commands without intervention orinvolvement of an external device, computer, or server.

FIG. 3E is a functional block diagram showing additional features of theNMD 320 in accordance with aspects of the disclosure. The NMD 320includes components configured to facilitate voice command captureincluding voice activity detector component(s) 312 k, beam formercomponents 312 l, acoustic echo cancellation (AEC) and/or self-soundsuppression components 312 m, activation word detector components 312 n,and voice/speech conversion components 312 o (e.g., voice-to-text andtext-to-voice). In the illustrated embodiment of FIG. 3E, the foregoingcomponents 312 k-312 o are shown as separate components. In someembodiments, however, one or more of the components 312 k-312 o aresubcomponents of the processors 112 a.

The beamforming and self-sound suppression components 312 l and 312 mare configured to detect an audio signal and determine aspects of voiceinput represented in the detected audio signal, such as the direction,amplitude, frequency spectrum, etc. The voice activity detector activitycomponents 312 k are operably coupled with the beamforming and AECcomponents 312 l and 312 m and are configured to determine a directionand/or directions from which voice activity is likely to have occurredin the detected audio signal. Potential speech directions can beidentified by monitoring metrics which distinguish speech from othersounds. Such metrics can include, for example, energy within the speechband relative to background noise and entropy within the speech band,which is measure of spectral structure. As those of ordinary skill inthe art will appreciate, speech typically has a lower entropy than mostcommon background noise.

The activation word detector components 312 n are configured to monitorand analyze received audio to determine if any activation words (e.g.,wake words) are present in the received audio. The activation worddetector components 312 n may analyze the received audio using anactivation word detection algorithm. If the activation word detector 312n detects an activation word, the NMD 320 may process voice inputcontained in the received audio. Example activation word detectionalgorithms accept audio as input and provide an indication of whether anactivation word is present in the audio. Many first- and third-partyactivation word detection algorithms are known and commerciallyavailable. For instance, operators of a voice service may make theiralgorithm available for use in third-party devices. Alternatively, analgorithm may be trained to detect certain activation words. In someembodiments, the activation word detector 312 n runs multiple activationword detection algorithms on the received audio simultaneously (orsubstantially simultaneously). As noted above, different voice services(e.g. AMAZON's ALEXA®, APPLE's SIRI®, or MICROSOFT's CORTANA®) can eachuse a different activation word for invoking their respective voiceservice. To support multiple services, the activation word detector 312n may run the received audio through the activation word detectionalgorithm for each supported voice service in parallel.

The speech/text conversion components 312 o may facilitate processing byconverting speech in the voice input to text. In some embodiments, theelectronics 312 can include voice recognition software that is trainedto a particular user or a particular set of users associated with ahousehold. Such voice recognition software may implementvoice-processing algorithms that are tuned to specific voice profile(s).Tuning to specific voice profiles may require less computationallyintensive algorithms than traditional voice activity services, whichtypically sample from a broad base of users and diverse requests thatare not targeted to media playback systems.

FIG. 3F is a schematic diagram of an example voice input 328 captured bythe NMD 320 in accordance with aspects of the disclosure. The voiceinput 328 can include a activation word portion 328 a and a voiceutterance portion 328 b. In some embodiments, the activation word 557 acan be a known activation word, such as “Alexa,” which is associatedwith AMAZON's ALEXA®. In other embodiments, however, the voice input 328may not include a activation word. In some embodiments, a networkmicrophone device may output an audible and/or visible response upondetection of the activation word portion 328 a. In addition oralternately, an NMB may output an audible and/or visible response afterprocessing a voice input and/or a series of voice inputs.

The voice utterance portion 328 b may include, for example, one or morespoken commands (identified individually as a first command 328 c and asecond command 328 e) and one or more spoken keywords (identifiedindividually as a first keyword 328 d and a second keyword 328 f). Inone example, the first command 328 c can be a command to play music,such as a specific song, album, playlist, etc. In this example, thekeywords may be one or words identifying one or more zones in which themusic is to be played, such as the Living Room and the Dining Room shownin FIG. 1A. In some examples, the voice utterance portion 328 b caninclude other information, such as detected pauses (e.g., periods ofnon-speech) between words spoken by a user, as shown in FIG. 3F. Thepauses may demarcate the locations of separate commands, keywords, orother information spoke by the user within the voice utterance portion328 b.

In some embodiments, the media playback system 100 is configured totemporarily reduce the volume of audio content that it is playing whiledetecting the activation word portion 557 a. The media playback system100 may restore the volume after processing the voice input 328, asshown in FIG. 3F. Such a process can be referred to as ducking, examplesof which are disclosed in U.S. patent application Ser. No. 15/438,749,incorporated by reference herein in its entirety.

FIGS. 4A-4D are schematic diagrams of a control device 430 (e.g., thecontrol device 130 a of FIG. 1H, a smartphone, a tablet, a dedicatedcontrol device, an IoT device, and/or another suitable device) showingcorresponding user interface displays in various states of operation. Afirst user interface display 431 a (FIG. 4A) includes a display name 433a (i.e., “Rooms”). A selected group region 433 b displays audio contentinformation (e.g., artist name, track name, album art) of audio contentplayed back in the selected group and/or zone. Group regions 433 c and433 d display corresponding group and/or zone name, and audio contentinformation audio content played back or next in a playback queue of therespective group or zone. An audio content region 433 e includesinformation related to audio content in the selected group and/or zone(i.e., the group and/or zone indicated in the selected group region 433b). A lower display region 433 f is configured to receive touch input todisplay one or more other user interface displays. For example, if auser selects “Browse” in the lower display region 433 f, the controldevice 430 can be configured to output a second user interface display431 b (FIG. 4B) comprising a plurality of music services 433 g (e.g.,Spotify, Radio by Tunein, Apple Music, Pandora, Amazon, TV, local music,line-in) through which the user can browse and from which the user canselect media content for play back via one or more playback devices(e.g., one of the playback devices 110 of FIG. 1A). Alternatively, ifthe user selects “My Sonos” in the lower display region 433 f, thecontrol device 430 can be configured to output a third user interfacedisplay 431 c (FIG. 4C). A first media content region 433 h can includegraphical representations (e.g., album art) corresponding to individualalbums, stations, or playlists. A second media content region 433 i caninclude graphical representations (e.g., album art) corresponding toindividual songs, tracks, or other media content. If the user selectionsa graphical representation 433 j (FIG. 4C), the control device 430 canbe configured to begin play back of audio content corresponding to thegraphical representation 433 j and output a fourth user interfacedisplay 431 d fourth user interface display 431 d includes an enlargedversion of the graphical representation 433 j, media content information433 k (e.g., track name, artist, album), transport controls 433 m (e.g.,play, previous, next, pause, volume), and indication 433 n of thecurrently selected group and/or zone name.

FIG. 5 is a schematic diagram of a control device 530 (e.g., a laptopcomputer, a desktop computer). The control device 530 includestransducers 534, a microphone 535, and a camera 536. A user interface531 includes a transport control region 533 a, a playback status region533 b, a playback zone region 533 c, a playback queue region 533 d, anda media content source region 533 e. The transport control regioncomprises one or more controls for controlling media playback including,for example, volume, previous, play/pause, next, repeat, shuffle, trackposition, crossfade, equalization, etc. The audio content source region533 e includes a listing of one or more media content sources from whicha user can select media items for play back and/or adding to a playbackqueue.

The playback zone region 533 b can include representations of playbackzones within the media playback system 100 (FIGS. 1A and 1B). In someembodiments, the graphical representations of playback zones may beselectable to bring up additional selectable icons to manage orconfigure the playback zones in the media playback system, such as acreation of bonded zones, creation of zone groups, separation of zonegroups, renaming of zone groups, etc. In the illustrated embodiment, a“group” icon is provided within each of the graphical representations ofplayback zones. The “group” icon provided within a graphicalrepresentation of a particular zone may be selectable to bring upoptions to select one or more other zones in the media playback systemto be grouped with the particular zone. Once grouped, playback devicesin the zones that have been grouped with the particular zone can beconfigured to play audio content in synchrony with the playbackdevice(s) in the particular zone. Analogously, a “group” icon may beprovided within a graphical representation of a zone group. In theillustrated embodiment, the “group” icon may be selectable to bring upoptions to deselect one or more zones in the zone group to be removedfrom the zone group. In some embodiments, the control device 530includes other interactions and implementations for grouping andungrouping zones via the user interface 531. In certain embodiments, therepresentations of playback zones in the playback zone region 533 b canbe dynamically updated as playback zone or zone group configurations aremodified.

The playback status region 533 c includes graphical representations ofaudio content that is presently being played, previously played, orscheduled to play next in the selected playback zone or zone group. Theselected playback zone or zone group may be visually distinguished onthe user interface, such as within the playback zone region 533 b and/orthe playback queue region 533 d. The graphical representations mayinclude track title, artist name, album name, album year, track length,and other relevant information that may be useful for the user to knowwhen controlling the media playback system 100 via the user interface531.

The playback queue region 533 d includes graphical representations ofaudio content in a playback queue associated with the selected playbackzone or zone group. In some embodiments, each playback zone or zonegroup may be associated with a playback queue containing informationcorresponding to zero or more audio items for playback by the playbackzone or zone group. For instance, each audio item in the playback queuemay comprise a uniform resource identifier (URI), a uniform resourcelocator (URL) or some other identifier that may be used by a playbackdevice in the playback zone or zone group to find and/or retrieve theaudio item from a local audio content source or a networked audiocontent source, possibly for playback by the playback device. In someembodiments, for example, a playlist can be added to a playback queue,in which information corresponding to each audio item in the playlistmay be added to the playback queue. In some embodiments, audio items ina playback queue may be saved as a playlist. In certain embodiments, aplayback queue may be empty, or populated but “not in use” when theplayback zone or zone group is playing continuously streaming audiocontent, such as Internet radio that may continue to play untilotherwise stopped, rather than discrete audio items that have playbackdurations. In some embodiments, a playback queue can include Internetradio and/or other streaming audio content items and be “in use” whenthe playback zone or zone group is playing those items.

When playback zones or zone groups are “grouped” or “ungrouped,”playback queues associated with the affected playback zones or zonegroups may be cleared or re-associated. For example, if a first playbackzone including a first playback queue is grouped with a second playbackzone including a second playback queue, the established zone group mayhave an associated playback queue that is initially empty, that containsaudio items from the first playback queue (such as if the secondplayback zone was added to the first playback zone), that contains audioitems from the second playback queue (such as if the first playback zonewas added to the second playback zone), or a combination of audio itemsfrom both the first and second playback queues. Subsequently, if theestablished zone group is ungrouped, the resulting first playback zonemay be re-associated with the previous first playback queue, or beassociated with a new playback queue that is empty or contains audioitems from the playback queue associated with the established zone groupbefore the established zone group was ungrouped. Similarly, theresulting second playback zone may be re-associated with the previoussecond playback queue, or be associated with a new playback queue thatis empty, or contains audio items from the playback queue associatedwith the established zone group before the established zone group wasungrouped.

FIG. 6 is a message flow diagram illustrating data exchanges betweendevices of the media playback system 100 (FIGS. 1A-1M).

At step 650 a, the media playback system 100 receives an indication ofselected media content (e.g., one or more songs, albums, playlists,podcasts, videos, stations) via the control device 130 a. The selectedmedia content can comprise, for example, media items stored locally onor more devices (e.g., the audio source 105 of FIG. 1C) connected to themedia playback system and/or media items stored on one or more mediaservice servers (one or more of the remote computing devices 106 of FIG.1B). In response to receiving the indication of the selected mediacontent, the control device 130 a transmits a message 651 a to theplayback device 110 a (FIGS. 1A-1C) to add the selected media content toa playback queue on the playback device 110 a.

At step 650 b, the playback device 110 a receives the message 651 a andadds the selected media content to the playback queue for play back.

At step 650 c, the control device 130 a receives input corresponding toa command to play back the selected media content. In response toreceiving the input corresponding to the command to play back theselected media content, the control device 130 a transmits a message 651b to the playback device 110 a causing the playback device 110 a to playback the selected media content. In response to receiving the message651 b, the playback device 110 a transmits a message 651 c to the firstcomputing device 106 a requesting the selected media content. The firstcomputing device 106 a, in response to receiving the message 651 c,transmits a message 651 d comprising data (e.g., audio data, video data,a URL, a URI) corresponding to the requested media content.

At step 650 d, the playback device 110 a receives the message 651 d withthe data corresponding to the requested media content and plays back theassociated media content.

At step 650 e, the playback device 110 a optionally causes one or moreother devices to play back the selected media content. In one example,the playback device 110 a is one of a bonded zone of two or more players(FIG. 1M). The playback device 110 a can receive the selected mediacontent and transmit all or a portion of the media content to otherdevices in the bonded zone. In another example, the playback device 110a is a coordinator of a group and is configured to transmit and receivetiming information from one or more other devices in the group. Theother one or more devices in the group can receive the selected mediacontent from the first computing device 106 a, and begin playback of theselected media content in response to a message from the playback device110 a such that all of the devices in the group play back the selectedmedia content in synchrony.

IV. Overview of Example Embodiments

As mentioned above, wireless surround sound systems are desirable formany reasons, including their ease of deployment, use,reconfigurability, and upgradeability. In the embodiments disclosed anddescribed herein, the multi-channel surround sound system can play audiocontent both (i) out loud in a listening area via a set of playbackdevices and/or (ii) via one or more headphone sets. In some embodiments,the multi-channel surround sound system is configured to switch between(i) playing audio content out loud in a listening area via a set ofplayback devices and (ii) playing audio content via one or more wirelessheadphone sets. For clarity, the example embodiments disclosed anddescribed herein focus on scenarios where a multi-channel surround soundsystem plays audio content via one or more wireless headphone sets.However, persons of skill in the art will understand that the systemsand methods disclosed and described herein are equally applicable tomulti-channel surround sound systems where a surround sound controllerprovides audio content to one or more playback devices having at leasttwo-channel playback capability. Similarly, for clarity, the exampleembodiments disclosed and described herein focus on scenarios where asurround sound processor generates (and headphone sets play) surroundsound. However, persons of skill in the art will understand that thesystems and methods disclosed and described herein are equallyapplicable to audio other than surround sound, including but not limitedto stereo, quadraphonic, and/or other multi-channel audio.

As used herein, a set of headphones, a pair of headphones, and aheadphone set all refer to a wireless headphone device configured to beworn by a user, where the headphone device comprises one or more leftspeakers and one or more right speakers, and where, when properly wornby a user, the headphone device is configured to play a left channel ofaudio content into the user's left ear and play a right channel of audiocontent into the user's right ear.

As mentioned above, technical challenges arise when generating andtransmitting surround sound audio information to multiple headphonesets. In some embodiments, the surround sound controller generates andtransmits different headphone-specific surround sound audio informationto each headphone set, and each headphone set receives, processes, andplays surround sound content sufficiently fast so that a headphonewearer does not experience a “lip sync” delay. The time and wirelessspectrum available to distribute content to every headphone set isfinite. The surround sound controller and the headphone sets can usehigher order wireless Modulation and Coding Schemes (MCS) fordistributing surround sound audio information to all the headphone sets.But while higher order MCSs may have greater throughput, they tend tohave lower wireless link margin, which can affect wireless range andtransmission signal quality.

More particularly, in the context of the disclosed systems and methods,transmitting data at a higher MCS generally enables a surround soundcontroller to transmit more channel streams comprising surround soundaudio content to more headphone sets more quickly (thereby avoiding orat least ameliorating undesirable “lip sync delay”) because of thehigher data throughput achievable at the higher MCS compared to lowerMCSs. However, the higher MCS has lower wireless link margin, and thus,the higher MCS has lower range (i.e., shorter transmission distance) andis less robust when operating in environments having wirelessinterference, which can increase retransmissions and/or cause audioplayback to drop out because of low wireless signal-to-noise ratio.Transmitting data at a lower MCS enables the surround sound processor totransmit channel streams comprising surround sound audio information towireless headphones with a higher wireless link margin, and thus morereliably, particularly over longer distances and in environments withgreater wireless interference. However, the lower data throughput at thelower MCS compared to the higher MCSs reduces the number of headphonesets that the surround sound controller can support simultaneously, atleast in embodiments where the surround sound controller is configuredto generate and transmit separate channel streams to each wirelessheadphone set. To strike a balance between data throughput and wirelesslink robustness, in some embodiments, the surround sound controller andthe wireless headphone sets are configured to use different MCSs basedon the number of headphone sets in concurrent operation as describedherein.

V. Technical Features

In some embodiments, at least some aspects of the technical solutionsderive from the technical structure and organization of the channelstreams (and/or perhaps subchannels thereof), surround sound audioinformation, playback timing, and clock timing information generated bythe surround sound controller and used by the one or more headphone setsto play surround sound audio information transmitted/received viachannel streams.

Therefore, to aid in understanding certain aspects of the disclosedtechnical solutions, certain technical details of the channel streams,surround sound audio information, playback timing, and clock timinginformation, as well the generation and use of playback timing and clocktiming for playing surround sound audio information are described below.Except where noted, the technical details of the channel streams,surround sound audio information, playback timing, and clock timinginformation described below are the same or at least substantially thesame for the examples shown and described with reference to FIGS. 7, 8,9, and 10.

a. Surround Sound Content

Surround sound content may be any type of surround sound content nowknown or later developed. In some embodiments, the surround sound audiocontent comprises surround sound content associated with video content.However, not all surround sound content is necessarily associated withvideo content. For example, some audio-only surround sound content mayinclude movie soundtracks (without video), live concert recordings,immersive audio tracks, or similar content that may have been recordedfor reproduction via a surround sound system but yet not havecorresponding video content associated therewith.

In some embodiments, a surround sound processor for the surround soundsystem (i) receives surround sound content from a surround sound contentsource, (ii) processes the surround sound content to generate aplurality of channel streams (described further herein) comprisingportions of the surround sound content (e.g., referred to as surroundsound audio information, or audio samples of surround sound audioinformation), and (iii) transmits the channel streams comprising thesurround sound audio information to one or more pairs of headphones overa Local Area Network (LAN), as described further herein. In someembodiments, the surround sound processor transmits channel streamscomprising the surround sound information to one or more playbackdevices equipped with loudspeakers instead of (or perhaps in additionto) transmitting channel streams comprising the surround soundinformation to the one or more pairs of headphones.

In some embodiments, the surround sound processor is a standalonesurround sound controller comprising one or more processors, one or morenetwork and/or other interfaces, and tangible, non-transitorycomputer-readable media storing program code executed by the one or moreprocessors to cause the surround sound controller to perform thesurround sound processing features and functions described herein. Insome embodiments, the surround sound controller or processor is acomponent of a playback device within the multi-channel surround soundsystem. For example, the surround sound processor in some embodimentsmay be a component of a soundbar, entertainment head-end, television,audio tuner, computer, or other device comprising one or moreprocessors, one or more network and/or other interfaces, and tangible,non-transitory computer-readable media storing program code executed bythe one or more processors to cause the surround sound processor toperform the features and functions described herein.

In some embodiments, the surround sound content received by the surroundsound processor comprises multiple discrete surround sound channels,where each discrete surround sound channel is intended for playback byone or more speakers in a set of speakers in the surround sound system,e.g., left front, right front, center, sub, left rear, right rear, etc.in a Dolby® Pro Logic® 5.1, 7.1, 9.1, 11.1 or other channel-basedsurround sound format. In some embodiments, when the surround soundcontent comprises multiple discrete surround sound channels, thesurround sound processor mixes the multiple channels to create virtualsurround sound audio played via a left channel and a right channel of aheadphone set.

In some embodiments, the surround sound content received by the surroundsound processor comprises surround sound audio content and surroundsound audio object data, e.g., in a Dolby Atmos® format, DTS:X® format,or other audio object-based format. In some embodiments that use audioobject data (or similar data) like Dolby Atmos®, DTS:X®, and similarformats, the surround sound processor uses the surround sound audiocontent and the surround sound audio object data to render virtualsurround sound audio played via a left channel and a right channel of aheadphone set.

In some embodiments, the surround sound processor receives the surroundsound content from a surround sound content source in digital form,e.g., as a stream of packets. In some embodiments, individual packets inthe stream of packets have a sequence number or other identifier thatspecifies an ordering of the packets. Packets transmitted over a datapacket network (e.g., Ethernet, WiFi, or other packet networks) mayarrive out of order, so the surround sound processor uses the sequencenumber or other identifier to reassemble the stream of packets in thecorrect order before performing further processing of the surround soundcontent. In some embodiments, the sequence number or other identifierthat specifies the ordering of the packets is or at least comprises atimestamp indicating a time when the packet was created by a device thattransmitted the packet. The packet creation time can be used as asequence number based on an assumption that packets are created in theorder in which they should be subsequently processed to create channelstreams.

After obtaining the surround sound content from the surround soundcontent source and processing the surround sound content to generate thevirtual surround sound audio for the one or more headphone sets, thesurround sound processor sends the left and right channels of virtualsurround sound audio to each headphone set via one or more channelstreams (described herein). In some embodiments, the surround soundprocessor generates first virtual surround sound audio (comprising leftand right channels) for a first headphone set and second virtualsurround sound audio (comprising left and right channels) for a secondheadphone set, where the first virtual surround sound audio is differentthan the second virtual surround sound audio. In such embodiments, thesurround sound processor generates the first virtual surround soundaudio and the second virtual surround sound audio based on the sameincoming surround sound content (described above). But the differencebetween the first virtual surround sound audio and the second virtualsurround sound audio is based on the difference in the positions of thefirst and second headphone sets relative to a screen displaying videocontent associated with the surround sound content.

b. Surround Sound Content Source

In operation, the surround sound processor component obtains any of theaforementioned types of surround sound content from a surround soundcontent source via an interface, e.g., a wired or wireless networkinterface(s), a “line-in” analog interface, a digital audio interface,an HDMI interface, an optical interface, or any other interface suitablefor receiving audio content in digital or analog format now known orlater developed.

A surround sound content source is any system, device, or applicationthat generates, provides, or otherwise makes available any of theaforementioned surround sound content to a surround sound processor. Forexample, in some embodiments, a surround sound content source includesany one or more of a streaming media (audio, video) service, digitalmedia server or other computing system, Voice Assistant Service (VAS),gaming console, television, cable set-top-box, streaming media player(e.g., AppleTV Roku®, gaming console), CD/DVD player, telephone, tablet,or any other source of surround sound content now known or laterdeveloped.

c. Channel Streams

In some embodiments, and as mentioned above, the surround soundprocessor (i) generates one or more channel streams based on thesurround sound content and (ii) transmits one or more of the generatedone or more channel streams (or at least one or more portions thereof)to one or more headphone sets. As illustrated in FIG. 7, in someembodiments, a soundbar comprising the surround sound processor (i)generates channel streams based on the surround sound content and (ii)transmits one or more of the generated channel streams (or at least oneor more portions thereof) to individual headphone sets.

In operation, each channel stream for a headphone set includes surroundsound audio information based on at least a portion of the surroundsound content received by the surround sound processor. In someembodiments, each channel stream may additionally include playbacktiming for the surround sound audio information in the channel stream.In some embodiments, the surround sound processor generates the playbacktiming for the surround sound audio information in each channel stream.In some embodiments, individual channel streams comprise multiplesubchannels of surround sound audio information. For example, anindividual channel stream for a headphone set may include left and rightsubchannels. In some headphone embodiments, rather than generating asingle channel comprising left and right subchannels, the surround soundprocessor may instead generate a first channel stream comprisingsurround sound audio content for playback by a left headphone and asecond channel stream comprising surround sound audio content forplayback by a right headphone.

In some embodiments, an individual channel stream includes both (i) thesurround sound audio information for the channel stream and (ii) theplayback timing for the surround sound audio information of the channelstream. For some embodiments where a channel stream includes multiplesubchannels, each subchannel includes audio information for thesubchannel and playback timing for the surround sound audio informationof the subchannel. But for some embodiments where a channel streamincludes multiple subchannels, each subchannel includes audioinformation for the subchannel, but the channel stream includes playbacktiming for the set of sub channels.

Alternatively, in some embodiments, an individual channel streamincludes the surround sound audio information for the channel stream,and the playback timing for the surround sound audio information for thechannel stream is sent separately from the surround sound audioinformation of the channel stream.

In some embodiments, an individual channel stream includes a pluralityof frames (or cells, or packets), wherein an individual frame includes aportion (e.g., a set of audio samples) of surround sound audioinformation and a playback time for that portion of the surround soundaudio information (e.g., a playback time for that set of audio samples).In some embodiments, and as described further herein, the playback timefor that portion of the surround sound audio information corresponds toa future time relative to a clock time of a clock that the surroundsound processor uses to generate the playback timing for that portion ofthe surround sound audio information.

In some embodiments, the soundbar (or other component comprising thesurround sound processor) transmits individual channel streams toindividual headphone sets using each headphone set's individual networkaddress. For example, in some embodiments, each headphone set has acorresponding unicast network address, and the soundbar transmits eachindividual channel stream to the channel stream's correspondingheadphone set via that headphone set's corresponding unicast networkaddress. Each headphone set receives its corresponding channel stream(s)via its corresponding unicast network address.

In some embodiments, the soundbar (or other component comprising thesurround sound processor) alternatively transmits one or more of thechannel streams to one or more of the headphone sets using a multicastnetwork address, and one or more headphone sets in the surround soundsystem receive the channel stream via that multicast address. Forexample, in some embodiments, the soundbar transmits all of the channelstreams to a multicast network address, and all of the headphone setsreceive all of the channel streams via the multicast network address.Then, at each headphone set, the headphone set determines which channelstream(s) it should process to generate analog audio signals forplayback via the speakers in each of its headphones.

d. Playback Timing

In some embodiments, each headphone set uses playback timing forsurround sound audio information in a channel stream to generate andplayback analog audio signals based on surround sound audio informationin the channel stream. In some embodiments, the soundbar (or othercomponent comprising a surround sound processor) generates the playbacktiming for the surround sound audio information for each channel streambased on clock timing (described below).

In some embodiments, the soundbar (i) generates playback timing forsurround sound audio information of an individual channel stream basedon clock timing from a local clock at the soundbar, and (ii) transmitsthe generated playback timing to all the headphone sets configured toreceive the individual channel stream and play the surround sound audioinformation in that individual channel stream.

In operation, when generating playback timing for an individual frame(or packet) of a channel stream (or subchannel thereof), the soundbaradds a “timing advance” to the current clock time of a local referenceclock at the soundbar. Adding this “timing advance” to the current clocktime results in a playback time for the frame/packet (or frames/packets)that amounts to a future time relative to that current clock time of thesoundbar at the time the soundbar generated the frame(s)/packet(s)comprising the portion(s) of the surround sound audio information.

In some embodiments, the “timing advance” is based on an amount of timethat is greater than or equal to the sum of (i) the network transit timerequired for frames and/or packets of the channel stream comprising thesurround sound audio information transmitted from the soundbar to arriveat the headphone set(s) configured to use the playback timing forplaying the surround sound audio information in that channel stream and(ii) the amount of time required for the headphone set(s) configured touse that playback timing to receive, process, and play the surroundsound audio information in that channel stream.

In some embodiments, the soundbar determines a timing advance by sendingone or more test packets to one or more (or perhaps all) headphone setsconfigured to play surround sound content, and then receiving testresponse packets back from one or more of the headphone sets. In someembodiments, the soundbar and the one or more headphone sets negotiate atiming advance via multiple test and response messages. In someembodiments with multiple headphone sets, the soundbar determines atiming advance by exchanging test and response messages with eachheadphone set, and then setting a timing advance that is sufficient forthe headphone set having the longest total of network transmit time andpacket processing time.

In some embodiments, the timing advance is less than about 15-20milliseconds. In further embodiments, the timing advance is less thanabout 10 milliseconds. In some embodiments, the timing advance remainsconstant after being determined, or at least remains constant for asubstantial duration, e.g., during an entire surround sound playbacksession. In other embodiments, the soundbar can change the timingadvance (including changing the timing advance during a surround soundplayback session) in response to a request from a headphone setindicating that a greater timing advance is required (e.g., because theheadphone set is not receiving packets of its channel stream comprisingportions of surround sound audio content until after the playback timefor those packets or without enough time to process and play the audioinformation in those packets at the designated playback time) or ashorter timing advance would be sufficient (e.g., because the headphoneset is buffering more packets of its channel stream comprising portionsof surround sound audio information than necessary to provideconsistent, reliable playback).

In some embodiments, the playback timing is generated for individualframes (or packets), or individual sets of frames or packets, comprisingaudio samples of the surround sound audio information of a channelstream. As described above, in some embodiments, the surround soundaudio information is packaged in a series of frames (or packets) whereindividual frames (or packets) comprise a portion of the surround soundaudio information, e.g., audio samples of the surround sound audioinformation. In some embodiments, the playback timing for the surroundsound audio information includes a playback time for each frame (orpacket) of the surround sound audio information. In some embodiments,the playback timing for an individual frame is included within the frame(or packet), e.g., in the header of the frame, in an extended header ofthe frame, in the payload portion of the frame, and/or in some otherdesignated portion of the frame. In other embodiments, the playbacktiming for a set of frames (or packets) is included within one frame ofthe set of frames, or alternatively, the playback timing for the set offrames is included in a separate frame associated with the correspondingset of frames.

In some embodiments, the playback time for an individual frame (orpacket) is identified within a timestamp or other indication. In suchembodiments, the timestamp (or other indication) represents a time toplay the surround sound audio information within that individual frame(or packet), or perhaps groups/sets of frames or packets. In operation,when the playback timing for an individual frame (or packet) isgenerated, the playback timing for that individual frame is a futuretime relative to a current clock time of a reference clock at the timethat the playback timing for that individual frame is generated.

e. Clock Timing

Clock timing can play an important role in synchronous playback of thesurround sound content disclosed and described herein. In someembodiments when the soundbar is in an operating mode where it playsaudio content in synchrony with one or more satellite playback devices,the soundbar uses its own local clock and playback timing for surroundsound audio information in a channel stream to generate and play analogaudio signals based on the surround sound audio information in thatchannel stream in synchrony with the one or more satellite playbackdevices. In the embodiments described herein where the soundbar is in anoperating mode where it does not play audio content in synchrony withone or more satellite playback devices, but instead, generates andtransmit channel streams comprising audio information to one or moreheadphone sets, each headphone set uses clock timing information fromthe soundbar, the headphone set's local clock timing, and the playbacktiming for the surround sound audio information in the channel stream togenerate and play analog audio signals based on the surround sound audioinformation received via the channel stream.

In embodiments where synchronous playback of the surround sound contentby multiple headphone sets is desirable, the soundbar (or other devicecomprising the surround sound processor) provides clock timinginformation to each headphone set in the system. This clock timinginformation includes a clock time of the reference clock that thesoundbar uses to generate playback timing for surround sound audioinformation in an individual channel stream.

In some embodiments, each headphone set receives one or more channelstreams comprising surround sound audio information and playback timinginformation for the surround sound audio information in the channelstream. The combination of the surround sound audio information and theplayback timing for the surround sound audio information in each channelstream is unique to each channel stream. However, the soundbar generatesthe playback timing for each channel stream using the same referenceclock. So, while each headphone set receives surround sound audioinformation and playback timing (for that surround sound audioinformation) unique to its channel stream(s), all the headphone setsreceive the same clock timing information from the soundbar (or otherdevice comprising the surround sound processor).

h. Headphone Set Using Playback Timing and Clock Timing to Play SurroundSound Content in Synchrony with Other Headphone Sets

Recall that, in some embodiments, the soundbar (or other devicecomprising the surround sound processor) transmits channel streamscomprising surround sound audio information along with playback timingfor the surround sound audio information to one or more headphone sets.The soundbar (or other device comprising the surround sound processor)also transmits clock timing information to the headphone sets. And whileeach headphone set receives surround sound audio information andplayback timing (for that surround sound audio information) that isunique to its channel stream(s), all the headphone sets receive the sameclock timing information from the soundbar (or other device comprisingthe surround sound processor).

To play an individual frame (or packet) of surround sound audioinformation in synchrony with another headphone set, the headphone set,for each channel stream that the headphone set is configured to process,(i) receives the frames (or packets) of the channel stream comprisingthe portions of the surround sound audio information from the soundbar,(ii) receives the playback timing for the surround sound audioinformation from the soundbar (e.g., in the frame and/or packet headersof the frames and/or packets of the channel stream comprising theportions of the surround sound audio information or perhaps separatelyfrom the frames and/or packets of the channel stream comprising theportions of the surround sound audio information), (iii) receives theclock timing from the soundbar, and (iv) plays the portion(s) of thesurround sound audio information in the individual frame (or packet)when the headphone set's local clock that the headphone set uses forplayback reaches the playback time specified in the playback timing forthat individual frame (or packet) of surround sound audio informationreceived from the soundbar, as adjusted by a “timing offset.”

In operation, after the headphone set receives clock timing from thesoundbar (or other device comprising the surround sound processor), theheadphone set determines a “timing offset” for the headphone set. This“timing offset” comprises (or at least corresponds to) a differencebetween the “reference” clock at the soundbar (that the soundbar used togenerate the playback timing) and a “local” clock at the headphone setthat the headphone set uses to play the surround sound content. Inoperation, each headphone set that receives the clock timing from thesoundbar calculates its own “timing offset” based on the differencebetween its local clock and the clock timing received from the soundbar,and thus, the “timing offset” that each headphone set determines isspecific to that particular headphone set. As such, each headphone setmay operate with a different timing offset.

In some embodiments, when playing back the surround sound audioinformation of a particular channel stream, the headphone set generatesnew playback timing (specific to the headphone set) for individualframes (or packets) of surround sound audio information by adding thepreviously determined “timing offset” to the playback timing for eachframe (or packet) of surround sound audio information of the channelstream received from the soundbar. With this approach, the headphone setconverts the playback timing for the surround sound audio informationreceived from the soundbar into “local” playback timing for theheadphone set. Because each headphone set calculates its own “timingoffset,” each headphone set's determined “local” playback timing for anindividual frame is specific to that particular headphone set.

And when the “local” clock that the headphone set is using for playingback the surround sound audio information received via the channelstream reaches the “local” playback time for an individual frame (orpacket) comprising portions (e.g., audio samples) of the surround soundaudio information, the headphone set plays the portions of surroundsound audio information (e.g., the audio samples of surround soundinformation) associated with that individual frame (or packet).

Thus, each headphone set plays frames (or packets) comprising portionsof the surround sound audio information of its assigned channelstream(s) according to the playback timing for that surround sound audioinformation as adjusted by the “timing offset” based on a differencebetween the headphone set's clock timing and the soundbar's clocktiming. And because the soundbar generated the playback timing for thoseframes (or packets) of surround sound audio information for eachheadphone set's assigned channel stream(s) relative to the soundbar'slocal clock timing, and further, because each headphone set uses theclock timing received from the soundbar to calculate its ownheadphone-set-specific “timing offset,” each headphone set plays itscorresponding frames (or packets) comprising corresponding portions ofsurround sound audio information for the same surround sound content insynchrony, i.e., at the same time or at substantially the same time,even when none of the headphone sets are synchronized to a master clock.

VI. Example System Architecture

FIG. 7 shows an example configuration of a multichannel audio systemwith wireless headphones according to some embodiments.

The multichannel surround sound system 700 comprises a plurality ofplayback devices, including a Soundbar 702, a Sub₁ 710, a Sub₂ 712, anOverhead 714, a Rear L 716, and a Rear R 718. In operation, theplurality of playback devices 702, 710-718 are configured to communicatewith each other directly and/or indirectly via a Local Area Network(LAN) 720. In some embodiments, the Soundbar 702, Sub₁ 710, Sub₂ 712,Overhead 714, Rear L 716, and Rear R 718 playback devices are connectedto the LAN 720, and the Soundbar 702 communicates directly with thesatellite playback devices (i.e., the Sub₁ 710, Sub₂ 712, Overhead 714,Rear L 716, and Rear R 718 playback devices) via direct wirelesstransmissions so that packets and/or frames transmitted between andamong the Soundbar 702, Sub₁ 710, Sub₂ 712, Overhead 714, Rear L 716,and Rear R 718 playback devices need not traverse a WiFi router or LANaccess point. In other embodiments, packets and/or frames transmittedbetween and among the Soundbar 702, Sub₁ 710, Sub₂ 712, Overhead 714,Rear L 716, and Rear R 718 playback devices traverse an intermediateWiFi router or LAN access point as in a typical WiFi LAN configuration.In some embodiments, some packets/frames are transmitted directlybetween and among the Soundbar 702, Sub₁ 710, Sub₂ 712, Overhead 714,Rear L 716, and Rear R 718 playback devices without traversing a WiFirouter or access point, and some packets/frames are transmittedindirectly (e.g., traverse a WiFi router or access point) between andamong the Soundbar 702, Sub₁ 710, Sub₂ 712, Overhead 714, Rear L 716,and Rear R 718 playback devices. For example, in some embodiments, theSoundbar 702 may transmit channel streams (and perhaps othertransmissions associated with synchronous playback, such as clock timingand/or playback timing) to individual satellite playback devices (i.e.,the Sub₁ 710, Sub₂ 712, Overhead 714, Rear L 716, and Rear R 718playback devices) via direct wireless transmissions that do not traversea WiFi router or access point, but the Soundbar 702 may transmitpackets/frames comprising other data (e.g., other management and controlsignaling and messages) to the individual satellite playback devices viatransmissions that traverse the WiFi router or access point.

The Soundbar 702 is configured to play (i) a front left channel (FL) viaFront L speaker 704, (ii) a front right channel (FR) via Front R speaker706, and (iii) a front center channel (FC) via Front Center speaker 708.Collectively, the set of FL, FR, and FC channels are sometimes referredto herein as the front channels, or F channels. In some embodiments, theSoundbar 702 is additionally configured to play certain overheadchannels via upward-firing speaker drivers, such as a front rightup-firing channel (FRU), a front left up-firing channel (FLU), and acenter up-firing channel (FCU). In some such embodiments, the front (F)channels include the set of FL, FLU, FR, FRU, FC, and FCU channels.

In some embodiments, Soundbar 702 includes a surround sound processorconfigured to perform the surround sound processor functions disclosedand described herein. In some embodiments, the Soundbar 702 isconsidered a surround sound system controller and the playback devicesSub₁ 710, Sub₂ 712, Overhead 714, Rear L 716, and Rear R 718 areconsidered surround sound satellites or satellite playback devices.

Some embodiments additionally include one or more of headphones 722 aand 722 b for listening to surround sound content when the Soundbar 702and satellite playback devices 710-718 in the system 700 are muted. Forexample, and as mentioned above, in some embodiments, the Soundbar 702is configured to operate in multiple modes, including (i) one or moreoperating modes where the Soundbar 702 is configured to play audio outloud in synchrony with one or more satellite playback devices, and (ii)one or more operating modes where the Soundbar 702 is configured totransmit audio information to one or more headphone sets, e.g.,headphone sets 722 a and 722 b. Although the example in FIG. 7 shows twoheadphone sets 722 a and 722 b, persons of skill in the art willunderstand that the system 700 could operate with a single headphone setor with more than two headphone sets.

In some embodiments, the Soundbar 702 and the headphone sets 722 a and722 b are connected to the LAN 720, and the Soundbar 702 communicatesdirectly with the headphone sets 722 a and 722 b via direct wirelesstransmissions so that packets and/or frames transmitted between andamong the Soundbar 702 and the headphone sets 722 a and 722 b need nottraverse a WiFi router or LAN access point. In some embodiments, theSoundbar 702 and the headphone sets 722 a and 722 b communicate directlywith each other via direct Bluetooth or other point-to-point and/orpoint-to-multipoint wireless transmissions (not shown) so that packetsand/or frames transmitted between and among the Soundbar 702 and theheadphone sets 722 a and 722 b are separate from and preferably do notinterfere with transmissions traversing the LAN 720.

In other embodiments, packets and/or frames transmitted between andamong the Soundbar 702 and the headphone sets 722 a and 722 b traversean intermediate WiFi router or

LAN access point as in a typical WiFi LAN configuration. In someembodiments, some packets/frames are transmitted directly (e.g., viadirect 2.4 GHz, 5.0 GHz or other wireless transmission, including butnot limited to WiFi, WiFi-type, and Bluetooth transmission) between andamong the Soundbar 702 and the headphone sets 722 a and 722 b withouttraversing a wireless router or access point, and some packets/framesare transmitted indirectly (e.g., traverse a wireless router or accesspoint) between and among the Soundbar 702 and the headphone sets 722 aand 722 b. For example, in some embodiments, the Soundbar 702 maytransmit channel streams (and perhaps other transmissions, such as clocktiming and/or playback timing) to individual headphone sets 722 a and722 b via direct wireless transmissions that do not traverse a wirelessrouter or access point, but the Soundbar 702 may transmit packets/framescomprising other data (e.g., other management and control signaling andmessages) to the individual headphone sets 722 a and 722 b viatransmissions that traverse a wireless router or access point.

In operation, in the example system 700, Soundbar 702 receives surroundsound content from a surround sound content source and processes thesurround sound content as described herein to generate a plurality ofchannel streams. Depending on the Soundbar's 702 mode of operation, theindividual channel streams include surround sound audio information forplayback by a playback device (e.g., the Soundbar 702 and/or one more ofthe satellite playback devices 710-718) and/or a headphone set (e.g.,one or more of headphone sets 722 a and 722 b).

VII. Example Timing Diagram

FIG. 8 shows an example timing diagram for generating and transmittingsurround sound audio information to multiple sets of wireless headphonesaccording to some embodiments. Persons of skill in the art willappreciate that the size of the frames (or sets of frames) of thechannel streams shown in diagram 800 do not necessarily correspond tospecific amounts of data, number of audio samples, frame/packet size,transmission duration, or other physical attributes relating to thepackaging, transmission, or playback of the surround sound audioinformation.

With reference to the example system architecture 700 in FIG. 7, timingdiagram 800 illustrates one example implementation of how Soundbar 702generates a plurality of channel streams 802-804 and transmits thechannel streams 802-804 to the headphone sets for playback, includingheadphone set 722 a and 722 b.

More particularly, region 816 of the timing diagram 800 shows thegeneration of channel streams 802-804 as function of a plurality ofmulti-millisecond timeframes illustrated along the x-axis of the diagram800, region 818 of the timing diagram 800 shows the transmission ofchannel streams 802-804 as a function of the plurality ofmulti-millisecond timeframes, and region 820 of the timing diagram 800shows playback of channel streams 802-804 at individual headphone setsas a function of the plurality of multi-millisecond timeframes.

The example procedures illustrated in example timing diagram 800 satisfytwo important technical requirements for enabling the surround soundsystem 700 to play surround sound content having corresponding videocontent, e.g., video content for a television show, movie, video game,web video, or other video content.

First, in some embodiments, it is desirable in some instances for theheadphones 722 a and 722 b to also play their respective portions of thesurround sound content (with or without corresponding surround videocontent) in synchrony (or at least substantially in synchrony) with eachother. In some embodiments, a first headphone sets plays surround soundcontent “substantially in synchrony” with a second headphone set whenthe first headphone set plays a portion of surround sound content withina threshold timeframe before or after the second headphone set plays acorresponding portion of the surround sound content (e.g., the firstheadphone set playing a portion of surround sound content between about−180 ms and about +80 ms of the second headphone set playing acorresponding portion of surround sound content, the first headphone setplaying a portion of surround sound content between about −130 ms andabout +50 ms of the second headphone set playing a corresponding portionof surround sound content, and/or the first headphone set playing aportion of surround sound content between about −100 ms and +25 ms ofthe second headphone set playing a corresponding portion of surroundsound content).

Second, and for surround sound content that has corresponding videocontent, it can be important for the Soundbar 702 to process anddistribute the surround sound content to the headphone sets 722 a and722 b for processing and playback sufficiently quickly such that thesurround sound content played by the headphone sets 722 a and 722 b isnot perceived to be out of sync with the corresponding video content. Insome embodiments, playing the surround sound content “substantially insync” with its corresponding video content refers to playing thesurround sound content within a threshold timeframe before or after thecorresponding video content is displayed on a screen (e.g., playing thesurround sound content between about −180 ms and about +80 ms ofdisplaying the corresponding video content, playing the surround soundcontent between about −130 ms and about +50 ms of displaying thecorresponding video content, and/or playing the surround sound contentbetween about −100 ms and +25 ms of displaying the corresponding videocontent).

In some embodiments, the time difference between playback of a portionof surround sound content by a headphone set and display of that portionof surround sound content's corresponding portion of video content on avideo display is based at least in part on the time required for theSoundbar 702 to transmit the surround sound content to the headphoneset.

For embodiments where the Soundbar 702 transmits one or more channelstreams comprising surround sound audio information to a headphone setvia WiFi (directly from the Soundbar 702 to the headphone set orindirectly from the Soundbar 702 to the headphone set via a wirelessrouter or access point), one factor that affects the time required totransmit the surround sound content from the Soundbar 702 to theheadphone set is the radio frequency Modulation and Coding Scheme (MCS)that the Soundbar 702 uses to transmit the channel stream(s) comprisingthe surround sound audio information to the headphone set.

For WiFi embodiments, the MCS specifies a combination of (i) the numberof spatial streams, (ii) the modulation type, and (iii) the coding ratefor WiFi transmissions between the Soundbar 702 and the headphoneset(s). The number of spatial streams refers to the number of separatedata transmissions in the same frequency space. With WiFi MultipleInput/Multiple Output (MIMO) schemes, it is possible transmit andreceive up to four separate spatial streams of data. Future standardswill allow up to eight or more separate spatial streams. The modulationtype refers to how the data is encoded for transmission. More complexmodulation methods (e.g., 16-QAM and 64-QAM) can sustain higher datarates but generally require less interference and good line of sight(LOS) between the transmitter and receiver. In contrast, less complexmodulation methods (e.g., BPSK, QPSK) tend to be more tolerant tointerference but generally have lower data rates. The coding rate refersto how much of the data stream is actually being used to transmit usabledata. In operation, the coding rate is expressed as a fraction with themost efficient rate being 5/6 or 83.3% of the data stream being used.

In the context of the disclosed systems, transmitting data at a higherMCS generally enables the Soundbar 702 to transmit more channel streamsto more headphone sets more quickly (thereby avoiding or at leastameliorating undesirable “lip sync delay”) because of the higher datathroughput achievable at the higher MCS compared to lower MCSs. However,the higher MCS has lower wireless link margin, and thus, the higher MCShas lower range (i.e., shorter transmission distance) and is less robustwhen operating in environments having wireless interference, which canincrease retransmissions and/or cause audio playback to drop out becauseof low wireless signal-to-noise ratio. Transmitting data at a lower MCSenables the Soundbar 702 to transmit channel streams to headphones witha higher wireless link margin, and thus more reliably, particularly overlonger distances and in environments with greater wireless interference.However, the lower data throughput at the lower MCS compared to thehigher MCSs reduces the number of headphone sets that the Soundbar 702can support simultaneously, at least in embodiments where the Soundbar702 is configured to generate and transmit separate channel streams toeach headphone set.

a. Switching Between Headphone Operating Modes

To strike a balance between data throughput and wireless linkrobustness, in some embodiments, the Soundbar 702 and the headphone sets722 a and 722 b are configured to use different MCSs based on the numberof headphone sets in simultaneous operation.

For example, in some embodiments, the Soundbar 702 is configured tooperate in a plurality of different operating modes (or states),including but not limited to multiple headphone operating modes (orstates). In some embodiments, the operating modes include (i) a firstheadphone connectivity mode, where the Soundbar 702 is configured to usea first MCS to transmit a first channel stream comprising first surroundsound audio information to a first pair of headphones 722 a, and (ii) asecond headphone connectivity state, where the Soundbar 702 isconfigured to concurrently use a second MCS to transmit (a) the firstchannel stream comprising the first surround sound audio information tothe first pair of headphones 722 a and (b) a second channel streamcomprising second surround sound audio information to a second pair ofheadphones 722 b. In such embodiments, the first MCS corresponds to alower data throughput at a higher wireless link margin than the secondMCS. In embodiments with three, four, or perhaps more headphone sets,the Soundbar 702 and the headphone sets can use MCSs with higher datathroughput but lower wireless link margin as the number of concurrentheadphone sets grows, as long as the wireless link margin is sufficientto support reliable transmission from the Soundbar 702 to the multipleheadphone sets. In operation, the Soundbar 702 (and the headphone sets)are configured to switch between operating modes (and correspondinghigher or lower MCSs) as headphone sets join and/or leave the system700.

For example, when the Soundbar 702 is operating in a non-headphone mode(e.g., operating in a mode where the Soundbar 702 is configured to playaudio content out loud in synchrony with one or more satellite playbackdevices), the Soundbar 702 switches from that non-headphone mode intooperating in the first headphone connectivity mode in response to one ormore of (i) a request from a headphone set (e.g., headphone set 722 a)to connect to the Soundbar 702, (ii) detecting that a headphone set(e.g., headphone set 722 a) associated with the Soundbar 702 is beenpowered on, (iii) detecting that a headphone set (e.g., headphone set722 a) associated with the Soundbar 702 is powered on and withinwireless transmission range of the Soundbar 702, (iv) a request receivedfrom a controller device (e.g., a controller application running on asmartphone, tablet, or other computing device) to switch to operating inthe first headphone connectivity mode, and/or (v) detecting actuation ofa physical switch or button on the Soundbar 702 that causes the Soundbar702 to switch between and among various operating modes.

Similarly, when Soundbar 702 is operating in the first headphoneconnectivity mode, the Soundbar 702 switches from operating in the firstheadphone connectivity mode to operating in the second headphoneconnectivity mode in response to one or more of (i) a request from anadditional headphone set (e.g., headphone set 722 b) to connect to theSoundbar 702, (ii) detecting that an additional headphone set (e.g.,headphone set 722 b) associated with the Soundbar 702 is been poweredon, (iii) detecting that an additional headphone set (e.g., headphoneset 722 b) associated with the Soundbar 702 is powered on and withinwireless transmission range of the Soundbar 702, (iv) a request receivedfrom a controller device (e.g., a controller application running on asmartphone, tablet, or other computing device) to switch to operating inthe second headphone connectivity mode and/or (v) detecting actuation ofa physical switch or button on the Soundbar 702 that causes the Soundbar702 to switch between and among various operating modes.

Further, when Soundbar 702 is operating in the second headphoneconnectivity mode, the Soundbar 702 switches from operating in thesecond headphone connectivity mode to operating in the first headphoneconnectivity mode in response to one or more of (i) a request from aheadphone set (e.g., headphone set 722 a or 722 b) to disconnect to theSoundbar 702, (ii) detecting that a headphone set (e.g., headphone set722 a or 722 b) associated with the Soundbar 702 is been powered on,(iii) a request received from a controller device (e.g., a controllerapplication running on a smartphone, tablet, or other computing device)to switch to operating in the first headphone connectivity mode, and/or(iv) detecting actuation of a physical switch or button on the Soundbar702 that causes the Soundbar 702 to switch between and among variousoperating modes.

b. Generating Channel Streams

As described above, the Soundbar 702 generates channel streams 802-804for individual headphone sets, where each channel stream 802-804comprises surround sound audio information for an individual headphoneset. In operation, the Soundbar 702 uses incoming surround sound contentto generate the surround sound audio information that it transmits tothe headphone sets 722 a and 722 b.

In some embodiments, processing the incoming surround sound contentincludes mixing channels of incoming surround sound content to generateindividual channels of surround sound audio information for playback byone or both of the headphone sets 722 a and 722 b. In some embodiments,processing the incoming surround sound content includes using audioobject information (e.g., Dolby Atmos® or DTS:X® audio objectinformation) to generate a plurality of channel streams of surroundsound audio information for playback by one or both of the headphonesets 722 a and 722 b.

In some embodiments, the channel stream for an individual headphone setis based on the surround sound audio content, the audio objectinformation, and a position of the first pair of headphones relative toa video screen configured to display video content associated with thesurround sound content. For example, in such embodiments, if the firstheadphone set 722 a is to the right of the video screen and the secondheadphone set 722 b is to the left of the video screen, then thesurround sound audio information played by the first headphone set 722 awould be different than the surround sound audio information played bythe second headphone set 724 b because the two headphone sets 722 a and722 b are at different positions relative the video screen configured todisplay the video content associated with the surround sound content.

In operation, the Soundbar 702 can determine the position of a headphoneset relative to the video screen in a number of ways. For example, ifthe Soundbar 702 is positioned under or above the video screen, which istypical, then the Soundbar 702 can use the position of a headphone setrelative to the Soundbar 702 as an approximation of the position of theheadphone set relative to the screen. The Soundbar 702 can determine theposition of a headphone set relative to the Soundbar 702 via one or moreof (i) wireless (e.g., WiFi, Bluetooth, etc.) signal strength (e.g.,received signal strength (RSS) measurements), (ii) wireless round-triptransmission time (RTT), (iii) wireless time of flight (TOF)measurements, (iv) wireless time of arrival (TOA) measurements, (v)beamforming, (vi) wireless ranging approaches now known or laterdeveloped, and/or (vi) any combination of two or more of theaforementioned approaches. The Soundbar 702 can additionally oralternatively determine the position of a headphone set relative to theSoundbar 702 via ultrasonic acoustic signaling transmitted by one orboth of the Soundbar 702 and/or the headphone set in combination withacoustic beamforming, RTT, TOF, TOA, or other approaches for soundlocation now known or later developed.

In some embodiments, the Soundbar 702 may use one or more of theaforementioned wireless and/or acoustic methods (individually or incombination) to determine the position of a headphone set relative tothe Soundbar 702. Additionally, or alternatively, a headphone set mayuse one or more of the aforementioned wireless and/or acoustic methods(individually or in combination) to determine its position relative tothe Soundbar 702 and then transmit an indication of its determinedposition to the Soundbar 702. In some embodiments, the Soundbar 702 mayreceive the position of a headphone set relative to the screen via auser input at a controller application configured to control the system700. In still further embodiments, if the Soundbar 702 is not positionedabove or below the screen, but the position of the Soundbar 702 relativeto the screen is known, then the Soundbar 702 can use any of theaforementioned methods to determine the position of a headphone setrelative to the Soundbar 702, and then determine the position of theheadphone set relative to the screen based on (i) the position of theSoundbar 702 relative to the screen and (ii) the position of theheadphone set relative to the Soundbar 702.

In operation, each of the channel streams 802-804 contains surroundsound audio information for playback by one of the headphone sets 722 aor 722 b. In the example shown in FIG. 8, the Soundbar 702 generateschannel stream 802 for headphone set 722 a and channel stream 804 forheadphone set 722 b. Channel stream 802 includes (i) a left subchannel1L comprising audio information for playback via one or more leftspeakers of the first headphone set 722 a, and (ii) a right subchannel1R comprising audio information for playback via one more right speakersof the first headphone set 722 a. And channel stream 804 includes (i) aleft subchannel 2L comprising audio information for playback via one ormore left speakers of the second headphone set 722 b, and (ii) a rightsubchannel 2R comprising audio information for playback via one moreright speakers of the second headphone set 722 b. However, in otherembodiments, the Soundbar 702 may generate two channel streams for eachheadphone set rather than a single channel stream with two subchannelsas show in FIG. 8. In some embodiments, each of the channel streams802-804 also includes playback timing information for the audioinformation transmitted via the channel stream.

In some embodiments, generating the plurality of channel streams 802-804includes the Soundbar 702 generating, for each channel stream (or forchannel streams with multiple subchannels, generating for eachsubchannel of the channel stream), a series of frames (or packets,cells, or similar) comprising the surround sound audio information forthe channel stream (or subchannel thereof), where each frame includes atleast a portion of the surround sound audio information of the channelstream (or subchannel thereof). In embodiments where each of the channelstreams 802-804 includes playback timing information for the surroundsound audio information transmitted via the channel streams 802-804,generating the plurality of channel streams 802-804 additionallyincludes the Soundbar 702 generating, for each channel stream, playbacktiming for the surround sound audio information within the frames (orpackets, cells, or similar) of the channel stream.

In some embodiments, individual frames in the series of frames includeboth (i) a portion of the surround sound audio information and (ii)playback timing for that portion of the surround sound audio informationin the frame. In some embodiments, each frame in the series of framesincludes both (i) a portion of the surround sound audio information and(ii) playback timing for that portion of the surround sound audioinformation in the frame. As described previously, the playback timingfor an individual frame includes a future time, relative to the clocktime of the Soundbar 702, at which the surround sound audio informationin the frame is to be played by the headphone set configured to playthat surround sound audio information.

In some embodiments of the example timing diagram 800, individualchannel streams (or subchannels thereof) comprise the above-describedplurality of frames comprising portions of surround sound audioinformation and playback timing for the surround sound audioinformation.

For example, in some embodiments, channel stream 802 includes twosubchannels, where the first subchannel includes a plurality of framesrepresented as 1L₀-1L₁₀, and where the second subchannel includes aplurality of frames represented as 1R₀-1R₁₀, where each of 1L₀-1L₁₀ and1R₀-1R₁₀ represents one frame, and where each frame comprises a portionof the surround sound audio information to be played by the firstheadphone set 722 a. In some embodiments, the channel steam 802 includesplayback timing for the individual frames in the channel stream 802. Forexample, in some embodiments, each frame includes playback timing forthat portion of the surround sound audio information in the frame. Inother embodiments, the channel stream 802 includes playback timing foreach set of frames in each subchannel. For example, in some embodiments,the channel stream 802 includes (i) playback timing₀ for frames 1L₀ and1R₀; (ii) playback timing₁ for frames 1L₁ and 1R₁; (iii) playbacktiming₂ for frames 1L₂ and 1R₂; (iv) playback timing₃ for frames 1L₃ and1R₃; (v) playback timing₄ for frames 1L₄ and 1R₄; and so on. Similarly,in some embodiments, channel stream 804 includes two subchannels, wherethe first subchannel includes a plurality of frames represented as2L₀-2L₁₀, and where the second subchannel includes a plurality of framesrepresented as 2R₀-2R₁₀, where each of 2L₀-2L₁₀ and 2R₀-2R₁₀ representsone frame, and where each frame comprises a portion of the surroundsound audio information to be played by the second headphone set 722 b.In some embodiments, the channel steam 804 includes playback timing forthe individual frames in the channel stream 804. For example, in someembodiments, each frame includes playback timing for that portion of thesurround sound audio information in the frame. In other embodiments, thechannel stream 802 includes playback timing for each set of frames ineach subchannel. For example, in some embodiments, the channel stream804 includes (i) playback timing₀ for frames 2L₀ and 2R₀; (ii) playbacktiming₁ for frames 2L₁ and 2R₁; (iii) playback timing₂ for frames 2L₂and 2R₂; (iv) playback timing₃ for frames 2L₃ and 2R₃; (v) playbacktiming₄ for frames 2L₄ and 2R₄; and so on.

Time-critical applications like distributing the multiple channelstreams 802-804 comprising surround sound audio information in areal-time or substantially real-time manner to the plurality ofheadphone sets 722 a and 722 b sufficiently quickly so that theheadphone sets 722 a and 722 b can play the surround sound content insync with the corresponding video content (and perhaps additionally insynchrony with each other) requires striking a careful balance betweenframe size and corresponding frame transmission rates. Accordingly, theframe size of the frames to be transmitted via each channel stream is animportant consideration for the transmission scheme. Here, frame size(or packet, cell, or similar data package size) refers to the number ofaudio samples in each frame.

Larger frame sizes (i.e., more audio samples per frame) can deliver moreaudio samples per frame to a headphone set, thereby reducing thefrequency (i.e., regularity) at which the Soundbar 702 must transmitframes to the headphone set. And because each frame requires someoverhead (e.g., addressing, error checking, etc.), using larger framesizes has a better surround sound audio information to overhead ratiothan using smaller frame sizes because more of the transmissionbandwidth is used for surround sound audio information rather than frameoverhead. However, larger frame sizes take longer to transmit thansmaller frame sizes (i.e., fewer audio samples per frame), and becausethe LAN 720 is a shared transmission medium and prone to collisions withtransmissions from other devices on the network and radio frequency (RF)interference, larger frame sizes are more prone to corruption duringtransmission by collisions and RF interference than smaller frame sizes,which in turn tends to increase the number of retransmissions requiredto deliver all the frames to all the headphone sets in the network.

On the other hand, while using smaller frame sizes tends to reduce thenumber of retransmissions, using smaller frame sizes increases thefrequency (i.e., regularity) at which the Soundbar 702 must transmitframes to the headphone sets. Further, because, as explained previously,each frame requires some frame overhead (e.g., addressing, errorchecking, etc.), using a larger number of smaller-sized frames has alower surround sound audio information to overhead ratio than atransmission scheme that uses a smaller number of larger-sized frames.Thus, using a larger number of smaller-sized frames results in moresystem bandwidth being used to transmit frame overhead (rather thanactual surround sound audio information) as compared to using a smallernumber of larger-sized frames. Additionally, using a larger number ofsmaller-sized frames requires the Soundbar 702 to generate moreframes-per-millisecond and requires each headphone set to process moreframes-per-millisecond as compared to using a smaller number oflarger-sized frames.

In some embodiments, each frame of the plurality of frames in eachchannel stream of the plurality channel streams 802-804 comprises 256samples of audio information, corresponding to 5.8 ms of audio at a 44.1kHz sample rate. Other frame sizes comprising more or fewer audiosamples corresponding to more or less audio content at higher or lowersample rates could be used, too, e.g., 128 samples or 512 samples. Insome embodiments, the size of frames (or packets) transmitted via somechannel streams may be larger or smaller than the size of frames (orpackets) transmitted via other channel streams.

In the example timing diagram 800, during timeframe ΔT_(x), Soundbar 702generates framer of each channel stream (or subchannel thereof) in theplurality of channel streams 802-804. For example, during timeframe ΔT₀,Soundbar 702 generates (i) frames 1L₀ and 1R₀ of channel stream 802 and(ii) frames 2L₀ and 2R₀ of channel stream 804.

Similarly, during timeframe ΔT₁, Soundbar 702 generates (i) frames 1L₁and 1R₁ of channel stream 802 and (ii) frames 2L₁ and 2R₁ of channelstream 804.

During timeframe ΔT₂, Soundbar 702 generates (i) frames 1L₂ and 1R₂ ofchannel stream 802 and (ii) frames 2L₂ and 2R₂ of channel stream 804.

During timeframe ΔT₃, Soundbar 702 generates (i) frames 1L₃ and 1R₃ ofchannel stream 802 and (ii) frames 2L₃ and 2R₃ of channel stream 804.

In operation, the Soundbar 702 continues to generate frames for each ofthe channel streams 802-804 in this manner until the Soundbar 702 ceasesto receive surround sound content from the surround sound source.

c. Transmitting Channel Streams

The Soundbar 702 also transmits channel streams 802-804 to the headphonesets 722 a and 722 b via the LAN 720. Region 818 of timing diagram 800shows the transmission of channel streams from the Soundbar 702 to theheadphone sets 722 a and 722 b.

In the example shown in FIG. 8, the Soundbar transmits two frames ofsurround sound audio information to each headphone set during eachtransmit time interval. For example, after a time delay of 1t toaccumulate frames for transmission, Soundbar 702 begins transmittingframes comprising surround sound audio information to the headphone sets722 a and 722 b.

In the example shown in FIG. 8, during timeframe ΔT_(X), Soundbar 702transmits (a) the 1L_(X-1) and 1R_(X-1) frames of channel stream 802 toheadphone set 722 a, and (b) 2L_(X-1) and 2R_(X-1) frames of channelstream 804 to headphone set 722 b. For example, during timeframe ΔT₁,Soundbar 702 transmits (a) the 1L₀ and 1R₀ frames of channel stream 802to headphone set 722 a, and (b) 2L₀ and 2R₀ frames of channel stream 804to headphone set 722 b. During timeframe ΔT₂, Soundbar 702 transmits (a)the 1L₁ and 1R₁ frames of channel stream 802 to headphone set 722 a, and(b) 2L₁ and 2R₁ frames of channel stream 804 to headphone set 722 b.During timeframe ΔT₃, Soundbar 702 transmits (a) the 1L₂ and 1R₂ framesof channel stream 802 to headphone set 722 a, and (b) 2L₂ and 2R₂ framesof channel stream 804 to headphone set 722 b.

In operation, the Soundbar 702 continues to transmit frames for each ofthe channel streams 802 and 804 to their corresponding headphone sets722 a and 722 b in this manner until the Soundbar 702 ceases to receivesurround sound content from the surround sound source.

Although the timing diagram 800 shows fairly even and consistenttransmission of frames (or sets of frames) from the Soundbar 702 to theindividual headphone sets 722 a and 722 b, in practice, the actualtransmission times (and durations) may fluctuate within a particulartime interval, and some transmissions may even occur in a later intervalbecause of contentions when seizing the RF channel for transmission,collisions and backoffs, RF interference, retransmissions, processordelays, and/or other computing and/or network situations that may causeminor irregularities and/or inconsistencies in the transmission andreception of the frames between the Soundbar 702 and the headphone sets722 a and 722 b.

And as described above, in some embodiments, the Soundbar 702 and theheadphone sets 722 a and 722 b are configured to use different MCSsbased on the number of headphone sets in simultaneous operation. Whenonly the first headphone set 722 a is active and in communication withthe Soundbar 702, the Soundbar 702 uses a first MCS to transmit channelstream 802 to the first headphone set 722 a. And when both the firstheadphone set 722 a and the second headphone set 722 b are active and incommunication with the Soundbar 702, the Soundbar 702 uses a second MCSto transmit both (a) channel stream 802 to the first headphone set 722 aand (b) channel stream 804 to the second headphone set 72 b. In suchembodiments, the first MCS has lower data throughput and a higherwireless link margin than the second MCS, i.e., the second MCS hashigher data throughput and a lower wireless link margin than the firstMCS.

d. Headphone Sets Playing Surround Sound Audio Content from ChannelStreams

Each headphone set receives its corresponding channel stream from theSoundbar 702 via the LAN 720. After receiving a channel stream, anindividual headphone set processes the channel stream to extract thesurround sound audio information from the channel stream, and then usesthe surround sound audio information, the playback timing information,and clock information to play the surround sound audio information insync (or at least substantially in sync) with its corresponding videocontent.

Region 820 of timing diagram 800 shows when the headphone sets 722 a and722 b play corresponding portions of the surround sound content. Inoperation, the headphone sets 722 a and 722 b each play surround soundaudio information of their corresponding channel streams based onplayback timing and clock timing as described earlier in detail herein.

During timeframe ΔT₁₀, the first headphone set 722 a plays the surroundsound audio information received via channel stream 802 (i.e., the audioinformation in frames 1L₀ and 1R₀) and the second headphone set 722 bplays the surround sound audio information received via channel stream804 (i.e., the audio information in frames 2L₀ and 2R₀). Duringtimeframe ΔT₁₀, the first headphone set 722 a plays the surround soundaudio information that the Soundbar 702 generated at time ΔT₀ andtransmitted to the first headphone set 722 a via channel stream 802(i.e., the audio information in frames 1L₀ and 1R₀) and the secondheadphone set 722 b plays the surround sound audio information that theSoundbar 702 generated at time ΔT₀ and transmitted to the secondheadphone set 722 b via channel stream 804 (i.e., the audio informationin frames 2L₀ and 2R₀). During timeframe ΔT₁₁, the first headphone set722 a plays the surround sound audio information that the Soundbar 702generated at time ΔT₁ and transmitted to the first headphone set 722 avia channel stream 802 (i.e., the audio information in frames 1L₁ and1R₁) and the second headphone set 722 b plays the surround sound audioinformation that the Soundbar 702 generated at time ΔT₁ and transmittedto the second headphone set 722 b via channel stream 804 (i.e., theaudio information in frames 2L₁ and 2R₁).

In operation, each headphone set continues to receive, process, and playsurround sound content while the Soundbar 702 continues to transmitchannel stream(s) comprising surround sound audio information to theheadphone set.

VII. Example Methods

FIG. 9 shows an example method 900 for generating and transmittingsurround sound audio information to multiple sets of wireless headphonesaccording to some embodiments.

Example method 900 includes and describes certain functions performed bya soundbar component, such as Soundbar 702. However, method 900 and/oraspects thereof could be performed by any other type of devicecomprising one or more processors configured to perform the features andfunctions described in method 900, including but not limited to one ormore of a different type of playback device, a television, a computingdevice, an audio/video controller, a set-top box, a media streamingdevice (e.g., an AppleTV®, Amazon Fire®, Roku®, or similar), a gamingconsole, or similar devices now known or later developed, actingindividually or in concert with each other.

Method 900 begins at block 902, which includes determining whether thesurround sound controller is operating in one of (i) a first headphoneconnectivity state, where the surround sound controller is configured totransmit a first channel stream comprising first surround sound audioinformation to a first pair of headphones, or (ii) a second headphoneconnectivity state, where the surround sound controller is configured toconcurrently transmit (a) the first channel stream comprising the firstsurround sound audio information to the first pair of headphones and (b)a second channel stream comprising second surround sound audioinformation to a second pair of headphones.

Next, method 900 advances to block 904, which includes in response todetermining that the surround sound controller is operating in the firstheadphone connectivity state, using a first Modulation and Coding Scheme(MCS) to transmit the first channel stream comprising the first surroundsound audio information to the first pair of headphones. Someembodiments additionally include, while the surround sound controller isoperating in the first headphone connectivity state, generating thefirst channel stream.

In some embodiments, in response to determining that the surround soundcontroller is operating in the first headphone connectivity state, block904 additionally includes determining a position of the first pair ofheadphones in a listening area, and generating the first channel streamcomprising the first surround sound audio information based on audiocontent, audio object data, and the position of the first pair ofheadphones. In some embodiments, determining the position of the firstpair of headphones in the listening area comprises determining theposition of the first pair of headphones relative to a screen configuredto display video content associated with the surround sound content.

Next, method 900 advances to block 906, which includes in response todetermining that the surround sound controller is operating in thesecond headphone connectivity state, using a second MCS to transmit (a)the first channel stream comprising the first surround sound audioinformation to the first pair of headphones and (b) second channelstream comprising the second surround sound audio information to thesecond pair of headphone. In some embodiments, the first MCS correspondsto a lower data rate at a higher wireless link margin than the secondMCS. Some embodiments additionally include, while the surround soundcontroller is operating in the second headphone connectivity state,generating the first channel stream and generating the second channelstream.

In some embodiments, using the second MCS to transmit (a) the firstchannel stream comprising the first surround sound audio information tothe first pair of headphones and (b) second channel stream comprisingthe second surround sound audio information to the second pair ofheadphones includes (1) during a first time interval, transmitting afirst frame of the first channel stream to the first pair of headphonesand a first frame of the second channel stream to the second pair ofheadphones, and (2) during a second time interval following the firsttime interval, transmitting a second frame of the first channel streamto the first pair of headphones and a second frame of the second channelstream to the second pair of headphones. In some embodiments, each ofthe first time interval and the second time interval is about 2.9 ms,and an individual frame comprises about 5.8 ms of surround sound audioinformation

In some embodiments, in response to determining that the surround soundcontroller is operating in the second headphone connectivity state,block 906 additionally includes (i) determining the position of thefirst pair of headphones in the listening area, and generating the firstchannel stream comprising the first surround sound audio informationbased on audio content, audio object data, and the position of the firstpair of headphones, and (ii) determining a position of the second pairof headphones in the listening area, and generating the second channelstream comprising second surround sound audio information based on audiocontent, audio object data, and the position of the second pair ofheadphones. In some embodiments, determining the position of the firstpair of headphones in the listening area comprises determining theposition of the first pair of headphones relative to a screen configuredto display video content associated with the surround sound content, anddetermining the position of the second pair of headphones in thelistening area comprises determining the position of the second pair ofheadphones relative to a screen configured to display video contentassociated with the surround sound content.

In some embodiments, method 900 additionally includes receiving surroundsound content comprising audio content and audio object data. In someembodiments, an individual channel stream is based on the audio contentand audio object data.

In some embodiments, an individual channel stream comprises a pluralityof frames, and an individual frame comprises at least a portion of aleft subchannel of the individual channel stream and at least a portionof a right subchannel of the individual channel stream. In someembodiments, an individual frame of an individual channel streamcomprises 256 bytes of surround sound audio information for a leftsubchannel of the individual channel stream and 256 bytes of surroundsound audio information for a right subchannel of the individual channelstream.

FIG. 10 shows an example method 1000 of receiving and processingsurround sound audio information at a set of wireless headphonesaccording to some embodiments.

Example method 1000 includes and describes certain functions performedby a headphone set, such as headphone set 722 a or headphone set 722 b.

Method 1000 begins at block 1002, which includes receiving a messagefrom a surround sound controller associated with the pair of headphones,wherein the message indicates that the surround sound controller isconfigured in one of (i) a first headphone connectivity state or (ii) asecond headphone connectivity state.

Next, method 1000 advances to block 1004, which includes in response tothe message comprising an indication that the surround sound controlleris configured in the first headphone connectivity state, configuring thepair of headphones to receive a channel stream comprising surround soundaudio information encoded via a first Modulation and Coding Scheme (MCS)from the surround sound controller.

Next, method 1000 advances to block 1006, which includes in response tothe message comprising an indication that the surround sound controlleris configured in the second headphone connectivity state, configuringthe pair of headphones to receive a channel stream comprising surroundsound audio information encoded via a second MCS from the surround soundcontroller. In some embodiments, the first MCS corresponds to a lowerdata rate at a higher wireless link margin than the second MCS.

In some embodiments, the channel stream comprises a plurality of frames,and an individual frame comprises at least a portion of a leftsubchannel of the channel stream and at least a portion of a rightsubchannel of the channel stream. In some embodiments, an individualframe of the channel stream comprises 256 bytes of surround sound audioinformation for a left subchannel of the channel stream and 256 bytes ofsurround sound audio information for a right subchannel of the channelstream.

In some embodiments, the channel stream is based on audio content andaudio object data. In some embodiments, the channel stream is based onaudio content, audio object data, and a position of the pair ofheadphones relative to a screen configured to display video contentassociated with the surround sound audio information.

With regard to the position of the headphone set relative to the screenconfigured to display video content associated with the surround soundinformation, in some embodiments, method 1000 additionally includes thepair of headphones transmitting, to the surround sound controller, anindication of the position of the pair of headphones relative to ascreen configured to display video content associated with the surroundsound audio information. In some embodiments, method 1000 additionallyor alternatively includes the pair of headphones transmitting a signal(e.g., a wireless and/or acoustic signal) to the surround soundcontroller, wherein the signal is sufficient for use by the surroundsound controller in determining the position of the pair of headphonesrelative to the screen configured to display video content associatedwith the surround sound audio information.

VIII. Conclusion

The above discussions relating to playback devices, controller devices,playback zone configurations, and media/audio content sources provideonly some examples of operating environments within which functions andmethods described below may be implemented. Other operating environmentsand configurations of media playback systems, playback devices, andnetwork devices not explicitly described herein may also be applicableand suitable for implementation of the functions and methods.

The description above discloses, among other things, various examplesystems, methods, apparatus, and articles of manufacture including,among other components, firmware and/or software executed on hardware.It is understood that such examples are merely illustrative and shouldnot be considered as limiting. For example, it is contemplated that anyor all of the firmware, hardware, and/or software aspects or componentscan be embodied exclusively in hardware, exclusively in software,exclusively in firmware, or in any combination of hardware, software,and/or firmware. Accordingly, the examples provided are not the onlyways) to implement such systems, methods, apparatus, and/or articles ofmanufacture.

Additionally, references herein to “embodiment” means that a particularfeature, structure, or characteristic described in connection with theembodiment can be included in at least one example embodiment of aninvention. The appearances of this phrase in various places in thespecification are not necessarily all referring to the same embodiment,nor are separate or alternative embodiments mutually exclusive of otherembodiments. As such, the embodiments described herein, explicitly andimplicitly understood by one skilled in the art, can be combined withother embodiments.

The specification is presented largely in terms of illustrativeenvironments, systems, procedures, steps, logic blocks, processing, andother symbolic representations that directly or indirectly resemble theoperations of data processing devices coupled to networks. These processdescriptions and representations are typically used by those skilled inthe art to most effectively convey the substance of their work to othersskilled in the art. Numerous specific details are set forth to provide athorough understanding of the present disclosure. However, it isunderstood to those skilled in the art that certain embodiments of thepresent disclosure can be practiced without certain, specific details.In other instances, well known methods, procedures, components, andcircuitry have not been described in detail to avoid unnecessarilyobscuring aspects of the embodiments. Accordingly, the scope of thepresent disclosure is defined by the appended claims rather than theforegoing description of embodiments.

When any of the appended claims are read to cover a purely softwareand/or firmware implementation, at least one of the elements in at leastone example is hereby expressly defined to include a tangible,non-transitory medium such as a memory, DVD, CD, Blu-ray, and so on,storing the software and/or firmware.

1. A computing device comprising: one or more processors; one or morenetwork interfaces configured to receive multichannel audio informationfrom a multichannel audio information source and communicatively couplethe computing device to a wireless local area network (LAN); andtangible, non-transitory computer-readable media comprising programinstructions stored therein, wherein the program instructions areexecutable by the one or more processors such that the computing deviceis configured to: when the computing device is configured to providemultichannel audio information to a single first pair of headphones, usea first Modulation and Coding Scheme (MCS) to transmit a first channelstream comprising first multichannel audio information to the first pairof headphones via the one or more network interfaces; and when thecomputing device is configured to provide multichannel audio informationto two pairs of headphones comprising the first pair of headphones and asecond pair of headphones, use a second MCS to (a) transmit the firstchannel stream comprising the first multichannel audio information tothe first pair of headphones via the one or more network interfaces and(b) transmit a second channel stream comprising second multichannelaudio information to a second pair of headphones via the one or morenetwork interfaces.
 2. The computing device of claim 1, wherein theprogram instructions comprise program instructions are executable by theone or more processors such that the computing device is furtherconfigured to: determine whether the computing device is operating inone of a first headphone connectivity state or a second headphoneconnectivity state, wherein when operating in the first headphoneconnectivity state, the computing device is configured to providemultichannel audio information to the single first pair of headphones,and when operating in the second headphone connectivity state, thecomputing device is configured to provide multichannel audio informationto the two pairs of headphones comprising the first pair of headphonesand the second pair of headphones.
 3. The computing device of claim 1,wherein the multichannel audio information is based on audio content andaudio object data, and wherein the first multichannel audio informationdiffers from the second multichannel audio information.
 4. The computingdevice of claim 3, wherein the tangible, non-transitorycomputer-readable media further comprises program instructions that,when executed by the one or more processors, cause the computing deviceto perform further functions comprising: when the computing device isconfigured to provide multichannel audio information to the single firstpair of headphones, determine a position of the first pair of headphonesin a listening area, and generate the first channel stream comprisingthe first multichannel audio information based on the audio content, theaudio object data, and the position of the first pair of headphones; andwhen the computing device is configured to provide multichannel audioinformation to two pairs of headphones comprising the first pair ofheadphones and the second pair of headphones, (i) determine the positionof the first pair of headphones in the listening area, and generate thefirst channel stream comprising the first multichannel audio informationbased on the audio content, the first audio object data, and theposition of the first pair of headphones, and (ii) determine a positionof the second pair of headphones in the listening area, and generate thesecond channel stream comprising second multichannel audio informationbased on the audio content, the audio object data, and the position ofthe second pair of headphones.
 5. The computing device of claim 4,wherein the program instructions executable by the one or moreprocessors such that the computing device is configured to determine theposition of the first pair of headphones in the listening area compriseprogram instructions executable by the one or more processors such thatthe computing device is configured to determine the position of thefirst pair of headphones relative to a screen configured to displayvideo content associated with the multichannel audio information, andwherein the program instructions executable by the one or moreprocessors such that the computing device is configured to determine theposition of the second pair of headphones in the listening area compriseprogram instructions executable by the one or more processors such thatthe computing device is configured to determine the position of thesecond pair of headphones relative to a screen configured to displayvideo content associated with the multichannel audio information.
 6. Thecomputing device of claim 1, wherein the first MCS corresponds to alower data rate at a higher wireless link margin than the second MCS. 7.The computing device of claim 1, wherein the program instructionscomprise program instructions executable by the one or more processorssuch that the computing device is further configured to: when thecomputing device is configured to provide multichannel audio informationto a single first pair of headphones, generate the first channel stream;and when the computing device is configured to provide multichannelaudio information to two pairs of headphones comprising the first pairof headphones and the second pair of headphones, generate the firstchannel stream and generate the second channel stream.
 8. The computingdevice of claim 1, wherein the first channel stream comprises a firstplurality of frames, and wherein an individual frame in the firstplurality of frames comprises at least a portion of a left subchannel ofthe first channel stream and at least a portion of a right subchannel ofthe first channel stream, and wherein the second channel streamcomprises a second plurality of frames, and wherein an individual framein the second plurality of frames comprises at least a portion of a leftsubchannel of the second channel stream and at least a portion of aright subchannel of the second channel stream.
 9. The computing deviceof claim 1, wherein the program instructions executable by the one ormore processors such that the computing device is configured to use thesecond MCS to transmit (a) the first channel stream comprising the firstmultichannel audio information to the first pair of headphones and (b)the second channel stream comprising the second multichannel audioinformation to the second pair of headphones comprises programinstructions executable by the one or more processors such that thecomputing device is configured to: during a first time interval,transmit a first frame of the first channel stream to the first pair ofheadphones and a first frame of the second channel stream to the secondpair of headphones; and during a second time interval following thefirst time interval, transmit a second frame of the first channel streamto the first pair of headphones and a second frame of the second channelstream to the second pair of headphones.
 10. The computing device ofclaim 9, wherein an individual frame of the first channel streamcomprises 256 bytes of multichannel audio information for a leftsubchannel of the first channel stream and 256 bytes of multichannelaudio information for a right subchannel of the first channel stream,and wherein an individual frame of the second channel stream comprises256 bytes of multichannel audio information for a left subchannel of thesecond channel stream and 256 bytes of multichannel audio informationfor a right subchannel of the second channel stream.
 11. The computingdevice of claim 9, wherein each of the first time interval and thesecond time interval is about 2.9 ms, wherein an individual frame of thefirst channel stream comprises about 5.8 ms of multichannel audioinformation, and wherein an individual frame of the second channelstream comprises about 5.8 ms of multichannel audio information.
 12. Thecomputing device of claim 1, wherein the computing device comprises asoundbar.
 13. Tangible, non-transitory computer-readable mediacomprising program instructions stored therein, wherein the programinstructions, when executed by one or more processors, cause a computingdevice to perform functions comprising: when the computing device isconfigured to provide multichannel audio information to a single firstpair of headphones, using a first Modulation and Coding Scheme (MCS) totransmit a first channel stream comprising first multichannel audioinformation to the first pair of headphones via one or more networkinterfaces; and when the computing device is configured to providemultichannel audio information to two pairs of headphones comprising thefirst pair of headphones and a second pair of headphones, using a secondMCS to (a) transmit the first channel stream comprising the firstmultichannel audio information to the first pair of headphones via theone or more network interfaces and (b) transmit a second channel streamcomprising second multichannel audio information to a second pair ofheadphones via the one or more network interfaces.
 14. The tangible,non-transitory computer-readable media of claim 13, wherein thefunctions further comprise: determining whether the computing device isoperating in one of a first headphone connectivity state or a secondheadphone connectivity state, wherein when operating in the firstheadphone connectivity state, the computing device is configured toprovide multichannel audio information to the single first pair ofheadphones, and when operating in the second headphone connectivitystate, the computing device is configured to provide multichannel audioinformation to the two pairs of headphones comprising the first pair ofheadphones and the second pair of headphones.
 15. The tangible,non-transitory computer-readable media of claim 13, wherein themultichannel audio information is based on audio content and audioobject data, and wherein the first multichannel audio informationdiffers from the second multichannel audio information.
 16. Thetangible, non-transitory computer-readable media of claim 15, whereinthe tangible, non-transitory computer-readable media further comprisesprogram instructions that, when executed by the one or more processors,cause the computing device to perform further functions comprising: whenthe computing device is configured to provide multichannel audioinformation to the single first pair of headphones, determining aposition of the first pair of headphones in a listening area, andgenerating the first channel stream comprising the first multichannelaudio information based on the audio content, the audio object data, andthe position of the first pair of headphones; and when the computingdevice is configured to provide multichannel audio information to twopairs of headphones comprising the first pair of headphones and thesecond pair of headphones, (i) determining the position of the firstpair of headphones in the listening area, and generating the firstchannel stream comprising the first multichannel audio information basedon the audio content, the first audio object data, and the position ofthe first pair of headphones, and (ii) determining a position of thesecond pair of headphones in the listening area, and generating thesecond channel stream comprising second multichannel audio informationbased on the audio content, the audio object data, and the position ofthe second pair of headphones.
 17. The tangible, non-transitorycomputer-readable media of claim 16, wherein determining the position ofthe first pair of headphones in the listening area comprises determiningthe position of the first pair of headphones relative to a screenconfigured to display video content associated with the multichannelaudio information, and wherein determining the position of the secondpair of headphones in the listening area comprises determining theposition of the second pair of headphones relative to a screenconfigured to display video content associated with the multichannelaudio information.
 18. The tangible, non-transitory computer-readablemedia of claim 13, wherein the first MCS corresponds to a lower datarate at a higher wireless link margin than the second MCS.
 19. Thetangible, non-transitory computer-readable media of claim 13, whereinthe first channel stream comprises a first plurality of frames, andwherein an individual frame in the first plurality of frames comprisesat least a portion of a left subchannel of the first channel stream andat least a portion of a right subchannel of the first channel stream,and wherein the second channel stream comprises a second plurality offrames, and wherein an individual frame in the second plurality offrames comprises at least a portion of a left subchannel of the secondchannel stream and at least a portion of a right subchannel of thesecond channel stream.
 20. The tangible, non-transitorycomputer-readable media of claim 13, wherein using the second MCS totransmit (a) the first channel stream comprising the first multichannelaudio information to the first pair of headphones and (b) the secondchannel stream comprising the second multichannel audio information tothe second pair of headphones comprises: during a first time interval,transmitting a first frame of the first channel stream to the first pairof headphones and a first frame of the second channel stream to thesecond pair of headphones; and during a second time interval followingthe first time interval, transmitting a second frame of the firstchannel stream to the first pair of headphones and a second frame of thesecond channel stream to the second pair of headphones.